Class JpaQueryCreator
java.lang.Object
org.springframework.data.repository.query.parser.AbstractQueryCreator<String, JpqlQueryBuilder.Predicate>
org.springframework.data.jpa.repository.query.JpaQueryCreator
- Direct Known Subclasses:
JpaCountQueryCreator
Query creator to create a
CriteriaQuery from a PartTree.- Author:
- Oliver Gierke, Mark Paluch, Michael Cramer, Mark Paluch, Reda.Housni-Alaoui, Moritz Becker, Andrey Kovalev, Greg Turnquist, Christoph Strobl, Jinmyeong Kim
-
Constructor Summary
ConstructorsConstructorDescriptionJpaQueryCreator(PartTree tree, boolean searchQuery, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, jakarta.persistence.metamodel.Metamodel metamodel) JpaQueryCreator(PartTree tree, boolean searchQuery, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, JpaEntityMetadata<?> entityMetadata, jakarta.persistence.metamodel.Metamodel metamodel) JpaQueryCreator(PartTree tree, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, jakarta.persistence.EntityManager em) Create a newJpaQueryCreator.JpaQueryCreator(PartTree tree, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, jakarta.persistence.metamodel.Metamodel metamodel) -
Method Summary
Modifier and TypeMethodDescriptionprotected JpqlQueryBuilder.Predicateand(Part part, JpqlQueryBuilder.Predicate base, Iterator<Object> iterator) protected JpqlQueryBuilder.SelectbuildQuery(Sort sort) Template method to build a query stub using the givenSort.protected final Stringcomplete(@Nullable JpqlQueryBuilder.Predicate predicate, Sort sort) Finalizes the givenPredicateand applies the given sort.protected JpqlQueryBuilder.PredicatecreateQuery(Sort sort) Create the JPQL query applyingSort.protected JpqlQueryBuilder.AbstractJpqlQuerycreateQuery(@Nullable JpqlQueryBuilder.Predicate predicate, Sort sort) org.springframework.data.jpa.repository.query.ParameterBinderReturns allParameterExpressioncreated when creating the query.protected JpqlQueryBuilder.Predicateor(JpqlQueryBuilder.Predicate base, JpqlQueryBuilder.Predicate predicate) booleanMethods inherited from class AbstractQueryCreator
createQuery, createQuery
-
Constructor Details
-
JpaQueryCreator
public JpaQueryCreator(PartTree tree, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, jakarta.persistence.EntityManager em) Create a newJpaQueryCreator.- Parameters:
tree- must not be null.type- must not be null.provider- must not be null.templates- must not be null.em- must not be null.
-
JpaQueryCreator
public JpaQueryCreator(PartTree tree, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, jakarta.persistence.metamodel.Metamodel metamodel) -
JpaQueryCreator
public JpaQueryCreator(PartTree tree, boolean searchQuery, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, jakarta.persistence.metamodel.Metamodel metamodel) -
JpaQueryCreator
public JpaQueryCreator(PartTree tree, boolean searchQuery, ReturnedType type, ParameterMetadataProvider provider, JpqlQueryTemplates templates, JpaEntityMetadata<?> entityMetadata, jakarta.persistence.metamodel.Metamodel metamodel)
-
-
Method Details
-
useTupleQuery
public boolean useTupleQuery() -
getBindings
Returns allParameterExpressioncreated when creating the query.- Returns:
- the parameterExpressions
-
getBinder
public org.springframework.data.jpa.repository.query.ParameterBinder getBinder() -
create
- Specified by:
createin classAbstractQueryCreator<String, JpqlQueryBuilder.Predicate>
-
and
protected JpqlQueryBuilder.Predicate and(Part part, JpqlQueryBuilder.Predicate base, Iterator<Object> iterator) - Specified by:
andin classAbstractQueryCreator<String, JpqlQueryBuilder.Predicate>
-
or
protected JpqlQueryBuilder.Predicate or(JpqlQueryBuilder.Predicate base, JpqlQueryBuilder.Predicate predicate) - Specified by:
orin classAbstractQueryCreator<String, JpqlQueryBuilder.Predicate>
-
complete
Finalizes the givenPredicateand applies the given sort. Delegates tobuildQuery(Sort)and hands it the currentJpqlQueryBuilder.Predicate.- Specified by:
completein classAbstractQueryCreator<String, JpqlQueryBuilder.Predicate>
-
createQuery
protected JpqlQueryBuilder.AbstractJpqlQuery createQuery(@Nullable JpqlQueryBuilder.Predicate predicate, Sort sort) -
buildQuery
Template method to build a query stub using the givenSort.- Parameters:
sort-- Returns:
-
createQuery
Create the JPQL query applyingSort.- Parameters:
sort- the sort order, can beSort.unsorted().- Returns:
- the rendered JPQL query.
-