T
- the type of the resultCommonAbstractCriteria
CriteriaQuery<T>
, Subquery<T>
public interface AbstractQuery<T> extends CommonAbstractCriteria
AbstractQuery
interface defines functionality that is common
to both top-level queries and subqueries.
It is not intended to be used directly in query construction.
All queries must have: a set of root entities (which may in turn own joins).
All queries may have: a conjunction of restrictions.
Modifier and Type | Method | Description |
---|---|---|
AbstractQuery<T> |
distinct(boolean distinct) |
Specify whether duplicate query results will be eliminated.
|
<X> Root<X> |
from(java.lang.Class<X> entityClass) |
Create and add a query root corresponding to the given entity,
forming a cartesian product with any existing roots.
|
<X> Root<X> |
from(EntityType<X> entity) |
Create and add a query root corresponding to the given entity,
forming a cartesian product with any existing roots.
|
java.util.List<Expression<?>> |
getGroupList() |
Return a list of the grouping expressions.
|
Predicate |
getGroupRestriction() |
Return the predicate that corresponds to the restriction(s)
over the grouping items, or null if no restrictions have
been specified.
|
java.lang.Class<T> |
getResultType() |
Return the result type of the query or subquery.
|
java.util.Set<Root<?>> |
getRoots() |
Return the query roots.
|
Selection<T> |
getSelection() |
Return the selection of the query, or null if no selection
has been set.
|
AbstractQuery<T> |
groupBy(java.util.List<Expression<?>> grouping) |
Specify the expressions that are used to form groups over
the query results.
|
AbstractQuery<T> |
groupBy(Expression<?>... grouping) |
Specify the expressions that are used to form groups over
the query results.
|
AbstractQuery<T> |
having(Expression<java.lang.Boolean> restriction) |
Specify a restriction over the groups of the query.
|
AbstractQuery<T> |
having(Predicate... restrictions) |
Specify restrictions over the groups of the query
according the conjunction of the specified restriction
predicates.
|
boolean |
isDistinct() |
Return whether duplicate query results must be eliminated or
retained.
|
AbstractQuery<T> |
where(Expression<java.lang.Boolean> restriction) |
Modify the query to restrict the query results according
to the specified boolean expression.
|
AbstractQuery<T> |
where(Predicate... restrictions) |
Modify the query to restrict the query results according
to the conjunction of the specified restriction predicates.
|
getRestriction, subquery
<X> Root<X> from(java.lang.Class<X> entityClass)
entityClass
- the entity class<X> Root<X> from(EntityType<X> entity)
entity
- metamodel entity representing the entity
of type XAbstractQuery<T> where(Expression<java.lang.Boolean> restriction)
restriction
- a simple or compound boolean expressionAbstractQuery<T> where(Predicate... restrictions)
restrictions
- zero or more restriction predicatesAbstractQuery<T> groupBy(Expression<?>... grouping)
grouping
- zero or more grouping expressionsAbstractQuery<T> groupBy(java.util.List<Expression<?>> grouping)
grouping
- list of zero or more grouping expressionsAbstractQuery<T> having(Expression<java.lang.Boolean> restriction)
restriction
- a simple or compound boolean expressionAbstractQuery<T> having(Predicate... restrictions)
restrictions
- zero or more restriction predicatesAbstractQuery<T> distinct(boolean distinct)
distinct
- boolean value specifying whether duplicate
results must be eliminated from the query result or
whether they must be retainedjava.util.Set<Root<?>> getRoots()
CriteriaQuery
or Subquery
itself,
including any subquery roots defined as a result of
correlation. Returns empty set if no roots have been defined.
Modifications to the set do not affect the query.Selection<T> getSelection()
java.util.List<Expression<?>> getGroupList()
Predicate getGroupRestriction()
boolean isDistinct()
java.lang.Class<T> getResultType()
createQuery
or subquery
method, that
type will be returned. If the query was created using the
createTupleQuery
method, the result type is
Tuple
. Otherwise, the result type is
Object
.Copyright © 2018. All rights reserved.