Interface QueryBuilder
- All Known Implementing Classes:
- AbstractSqlLikeQueryBuilder,- CosmosSqlQueryBuilder,- JpaQueryBuilder,- MongoQueryBuilder,- SqlQueryBuilder
@Introspected
public interface QueryBuilder
An interface capable of encoding a query into a string and a set of named parameters.
- Since:
- 1.0
- Author:
- graemerocher
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic final PatternA pattern used to find variables in a query string.
- 
Method SummaryModifier and TypeMethodDescriptionbuildDelete(@NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull QueryModel query) Encode the given query into the encoded query instance.default @NonNull QueryResultbuildDelete(@NonNull QueryModel query) Encode the given query into the encoded query instance.@Nullable QueryResultbuildInsert(io.micronaut.core.annotation.AnnotationMetadata repositoryMetadata, PersistentEntity entity) Builds an insert statement for the given entity.@NonNull QueryResultbuildOrderBy(@NonNull PersistentEntity entity, @NonNull Sort sort) Encode the given query into the encoded query instance.@NonNull QueryResultbuildPagination(@NonNull Pageable pageable) Encode the pageable.buildQuery(@NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull QueryModel query) Encode the given query for the passed annotation metadata and query.buildUpdate(@NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull QueryModel query, @NonNull List<String> propertiesToUpdate) Encode the given query into the encoded query instance.buildUpdate(@NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull QueryModel query, @NonNull Map<String, Object> propertiesToUpdate) Encode the given query into the encoded query instance.default @NonNull QueryResultbuildUpdate(@NonNull QueryModel query, @NonNull List<String> propertiesToUpdate) Encode the given query into the encoded query instance.default @NonNull QueryResultbuildUpdate(@NonNull QueryModel query, @NonNull Map<String, Object> propertiesToUpdate) Encode the given query into the encoded query instance.static @NonNull QueryBuildernewQueryBuilder(@NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata) Build a query build from the configured annotation metadata.default booleanWhether projections should be aliased.default booleanWhether FOR UPDATE queries are supported.
- 
Field Details- 
VARIABLE_PATTERNA pattern used to find variables in a query string.
 
- 
- 
Method Details- 
buildInsert@Nullable @Nullable QueryResult buildInsert(io.micronaut.core.annotation.AnnotationMetadata repositoryMetadata, PersistentEntity entity) Builds an insert statement for the given entity.- Parameters:
- repositoryMetadata- The repository annotation metadata
- entity- The entity
- Returns:
- The insert statement or null if the implementation doesn't require insert statements
 
- 
buildQueryQueryResult buildQuery(@NonNull @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull @NonNull QueryModel query) Encode the given query for the passed annotation metadata and query.- Parameters:
- annotationMetadata- The annotation metadata
- query- The query model
- Returns:
- The query result
 
- 
buildUpdate@NonNull default @NonNull QueryResult buildUpdate(@NonNull @NonNull QueryModel query, @NonNull @NonNull List<String> propertiesToUpdate) Encode the given query into the encoded query instance.- Parameters:
- query- The query
- propertiesToUpdate- The property names to update
- Returns:
- The encoded query
 
- 
buildUpdate@NonNull default @NonNull QueryResult buildUpdate(@NonNull @NonNull QueryModel query, @NonNull @NonNull Map<String, Object> propertiesToUpdate) Encode the given query into the encoded query instance.- Parameters:
- query- The query
- propertiesToUpdate- The property names to update
- Returns:
- The encoded query
 
- 
buildUpdateQueryResult buildUpdate(@NonNull @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull @NonNull QueryModel query, @NonNull @NonNull List<String> propertiesToUpdate) Encode the given query into the encoded query instance.- Parameters:
- annotationMetadata- The annotation metadata
- query- The query
- propertiesToUpdate- The property names to update
- Returns:
- The encoded query
 
- 
buildUpdateQueryResult buildUpdate(@NonNull @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull @NonNull QueryModel query, @NonNull @NonNull Map<String, Object> propertiesToUpdate) Encode the given query into the encoded query instance.- Parameters:
- annotationMetadata- The annotation metadata
- query- The query
- propertiesToUpdate- The property names to update
- Returns:
- The encoded query
 
- 
buildDeleteEncode the given query into the encoded query instance.- Parameters:
- query- The query
- Returns:
- The encoded query
 
- 
buildDeleteQueryResult buildDelete(@NonNull @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata, @NonNull @NonNull QueryModel query) Encode the given query into the encoded query instance.- Parameters:
- annotationMetadata- The annotation metadata
- query- The query
- Returns:
- The encoded query
 
- 
buildOrderBy@NonNull @NonNull QueryResult buildOrderBy(@NonNull @NonNull PersistentEntity entity, @NonNull @NonNull Sort sort) Encode the given query into the encoded query instance.- Parameters:
- entity- The root entity
- sort- The sort
- Returns:
- The encoded query
 
- 
buildPaginationEncode the pageable.- Parameters:
- pageable- The pageable
- Returns:
- The encoded query
 
- 
newQueryBuilder@NonNull static @NonNull QueryBuilder newQueryBuilder(@NonNull @NonNull io.micronaut.core.annotation.AnnotationMetadata annotationMetadata) Build a query build from the configured annotation metadata.- Parameters:
- annotationMetadata- The annotation metadata.
- Returns:
- The query builder
 
- 
shouldAliasProjectionsdefault boolean shouldAliasProjections()Whether projections should be aliased.- Returns:
- True if they should
 
- 
supportsForUpdatedefault boolean supportsForUpdate()Whether FOR UPDATE queries are supported.- Returns:
- True if FOR UPDATE queries are supported
 
 
-