Class AbstractJdbcQuery
java.lang.Object
org.springframework.data.jdbc.repository.query.AbstractJdbcQuery
- All Implemented Interfaces:
org.springframework.data.repository.query.RepositoryQuery
- Direct Known Subclasses:
PartTreeJdbcQuery
,StringBasedJdbcQuery
public abstract class AbstractJdbcQuery
extends Object
implements org.springframework.data.repository.query.RepositoryQuery
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
Modifier and TypeClassDescriptionprotected static class
DelegatingRowMapper
that reads a row intoT
and converts it afterwards intoObject
.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, org.springframework.jdbc.core.ResultSetExtractor<?> extractor, org.springframework.jdbc.core.RowMapper<?> rowMapper) protected Class<?>
resolveTypeToRead
(org.springframework.data.repository.query.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 interfaceorg.springframework.data.repository.query.RepositoryQuery
-
getQueryExecution
protected org.springframework.data.jdbc.repository.query.JdbcQueryExecution<?> getQueryExecution(JdbcQueryMethod queryMethod, @Nullable org.springframework.jdbc.core.ResultSetExtractor<?> extractor, org.springframework.jdbc.core.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
protected Class<?> resolveTypeToRead(org.springframework.data.repository.query.ResultProcessor resultProcessor) 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.
-