Class AbstractJdbcQuery
java.lang.Object
org.springframework.data.jdbc.repository.query.AbstractJdbcQuery
- All Implemented Interfaces:
RepositoryQuery
- Direct Known Subclasses:
PartTreeJdbcQuery
,StringBasedJdbcQuery
Base class for queries based on a repository method. It holds the infrastructure for executing a query and knows how
to execute a query based on the return type of the method. How to construct the query is left to subclasses.
- Since:
- 2.0
- Author:
- Jens Schauder, Kazuki Shimizu, Oliver Gierke, Maciej Walkowiak, Mark Paluch, Dennis Effing
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
static interface
Factory to create aRowMapper
for a given class. -
Method Summary
Modifier and TypeMethodDescriptionprotected org.springframework.data.jdbc.repository.query.JdbcQueryExecution<?>
getQueryExecution
(JdbcQueryMethod queryMethod, ResultSetExtractor<?> extractor, RowMapper<?> rowMapper) protected Class<?>
resolveTypeToRead
(ResultProcessor resultProcessor) Obtain the result type to read fromResultProcessor
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.data.repository.query.RepositoryQuery
execute
-
Method Details
-
getQueryMethod
- Specified by:
getQueryMethod
in interfaceRepositoryQuery
-
getQueryExecution
protected org.springframework.data.jdbc.repository.query.JdbcQueryExecution<?> getQueryExecution(JdbcQueryMethod queryMethod, @Nullable ResultSetExtractor<?> extractor, RowMapper<?> rowMapper) Creates aJdbcQueryExecution
givenJdbcQueryMethod
,ResultSetExtractor
anRowMapper
. Prefers the givenResultSetExtractor
overRowMapper
.- Parameters:
queryMethod
- must not be null.extractor
- must not be null.rowMapper
- must not be null.- Returns:
- a JdbcQueryExecution appropriate for queryMethod. Guaranteed to be not null.
-
resolveTypeToRead
Obtain the result type to read fromResultProcessor
.- Parameters:
resultProcessor
- theResultProcessor
used to determine the result type. Must not be null.- Returns:
- the type that should get loaded from the database before it gets converted into the actual return type of a method. Guaranteed to be not null.
-