Package org.hibernate.criterion
Class Restrictions
- java.lang.Object
-
- org.hibernate.criterion.Restrictions
-
- Direct Known Subclasses:
Expression
public class Restrictions extends java.lang.ObjectThe criterion package may be used by applications as a framework for building new kinds of Criterion. However, it is intended that most applications will simply use the built-in criterion types via the static factory methods of this class. See also theProjectionsfactory methods for generatingProjectioninstances- See Also:
Criteria
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedRestrictions()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static CriterionallEq(java.util.Map<java.lang.String,?> propertyNameValues)Apply an "equals" constraint to each property in the key set of a Mapstatic Conjunctionand(Criterion... predicates)Return the conjunction of multiple expressionsstatic LogicalExpressionand(Criterion lhs, Criterion rhs)Return the conjunction of two expressionsstatic Criterionbetween(java.lang.String propertyName, java.lang.Object low, java.lang.Object high)Apply a "between" constraint to the named propertystatic Conjunctionconjunction()Group expressions together in a single conjunction (A and B and C...).static Conjunctionconjunction(Criterion... conditions)Group expressions together in a single conjunction (A and B and C...).static Disjunctiondisjunction()Group expressions together in a single disjunction (A or B or C...).static Disjunctiondisjunction(Criterion... conditions)Group expressions together in a single disjunction (A or B or C...).static SimpleExpressioneq(java.lang.String propertyName, java.lang.Object value)Apply an "equal" constraint to the named propertystatic CriterioneqOrIsNull(java.lang.String propertyName, java.lang.Object value)Apply an "equal" constraint to the named property.static PropertyExpressioneqProperty(java.lang.String propertyName, java.lang.String otherPropertyName)Apply an "equal" constraint to two propertiesstatic CriterionfkEq(java.lang.String associationPropertyName, java.lang.Object value)static CriterionfkIsNotNull(java.lang.String associationPropertyName)static CriterionfkIsNull(java.lang.String associationPropertyName)static CriterionfkNe(java.lang.String associationPropertyName, java.lang.Object value)static SimpleExpressionge(java.lang.String propertyName, java.lang.Object value)Apply a "greater than or equal" constraint to the named propertystatic PropertyExpressiongeProperty(java.lang.String propertyName, java.lang.String otherPropertyName)Apply a "greater than or equal" constraint to two propertiesstatic SimpleExpressiongt(java.lang.String propertyName, java.lang.Object value)Apply a "greater than" constraint to the named propertystatic PropertyExpressiongtProperty(java.lang.String propertyName, java.lang.String otherPropertyName)Apply a "greater than" constraint to two propertiesstatic CriterionidEq(java.lang.Object value)Apply an "equal" constraint to the identifier propertystatic Criterionilike(java.lang.String propertyName, java.lang.Object value)A case-insensitive "like" (similar to Postgres ilike operator)static Criterionilike(java.lang.String propertyName, java.lang.String value, MatchMode matchMode)A case-insensitive "like" (similar to Postgres ilike operator) using the provided match modestatic Criterionin(java.lang.String propertyName, java.lang.Object... values)Apply an "in" constraint to the named property.static Criterionin(java.lang.String propertyName, java.util.Collection values)Apply an "in" constraint to the named property.static CriterionisEmpty(java.lang.String propertyName)Constrain a collection valued property to be emptystatic CriterionisNotEmpty(java.lang.String propertyName)Constrain a collection valued property to be non-emptystatic CriterionisNotNull(java.lang.String propertyName)Apply an "is not null" constraint to the named propertystatic CriterionisNull(java.lang.String propertyName)Apply an "is null" constraint to the named propertystatic SimpleExpressionle(java.lang.String propertyName, java.lang.Object value)Apply a "less than or equal" constraint to the named propertystatic PropertyExpressionleProperty(java.lang.String propertyName, java.lang.String otherPropertyName)Apply a "less than or equal" constraint to two propertiesstatic SimpleExpressionlike(java.lang.String propertyName, java.lang.Object value)Apply a "like" constraint to the named propertystatic SimpleExpressionlike(java.lang.String propertyName, java.lang.String value, MatchMode matchMode)Apply a "like" constraint to the named property using the provided match modestatic SimpleExpressionlt(java.lang.String propertyName, java.lang.Object value)Apply a "less than" constraint to the named propertystatic PropertyExpressionltProperty(java.lang.String propertyName, java.lang.String otherPropertyName)Apply a "less than" constraint to two propertiesstatic NaturalIdentifiernaturalId()Consider using any of the natural id based loading stuff from session instead, especially in cases where the restriction is the full set of natural id values.static SimpleExpressionne(java.lang.String propertyName, java.lang.Object value)Apply a "not equal" constraint to the named propertystatic CriterionneOrIsNotNull(java.lang.String propertyName, java.lang.Object value)Apply a "not equal" constraint to the named property.static PropertyExpressionneProperty(java.lang.String propertyName, java.lang.String otherPropertyName)Apply a "not equal" constraint to two propertiesstatic Criterionnot(Criterion expression)Return the negation of an expressionstatic Disjunctionor(Criterion... predicates)Return the disjunction of multiple expressionsstatic LogicalExpressionor(Criterion lhs, Criterion rhs)Return the disjunction of two expressionsstatic CriterionsizeEq(java.lang.String propertyName, int size)Constrain a collection valued property by sizestatic CriterionsizeGe(java.lang.String propertyName, int size)Constrain a collection valued property by sizestatic CriterionsizeGt(java.lang.String propertyName, int size)Constrain a collection valued property by sizestatic CriterionsizeLe(java.lang.String propertyName, int size)Constrain a collection valued property by sizestatic CriterionsizeLt(java.lang.String propertyName, int size)Constrain a collection valued property by sizestatic CriterionsizeNe(java.lang.String propertyName, int size)Constrain a collection valued property by sizestatic CriterionsqlRestriction(java.lang.String sql)Apply a constraint expressed in SQL with no JDBC parameters.static CriterionsqlRestriction(java.lang.String sql, java.lang.Object[] values, Type[] types)Create a restriction expressed in SQL with JDBC parameters.static CriterionsqlRestriction(java.lang.String sql, java.lang.Object value, Type type)Create a restriction expressed in SQL with one JDBC parameter.
-
-
-
Method Detail
-
idEq
public static Criterion idEq(java.lang.Object value)
Apply an "equal" constraint to the identifier property- Parameters:
value- The value to use in comparison- Returns:
- Criterion
- See Also:
IdentifierEqExpression
-
fkEq
public static Criterion fkEq(java.lang.String associationPropertyName, java.lang.Object value)
-
fkNe
public static Criterion fkNe(java.lang.String associationPropertyName, java.lang.Object value)
-
fkIsNotNull
public static Criterion fkIsNotNull(java.lang.String associationPropertyName)
-
fkIsNull
public static Criterion fkIsNull(java.lang.String associationPropertyName)
-
eq
public static SimpleExpression eq(java.lang.String propertyName, java.lang.Object value)
Apply an "equal" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- SimpleExpression
- See Also:
SimpleExpression
-
eqOrIsNull
public static Criterion eqOrIsNull(java.lang.String propertyName, java.lang.Object value)
Apply an "equal" constraint to the named property. If the value is null, instead apply "is null".- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
eq(java.lang.String, java.lang.Object),isNull(java.lang.String)
-
ne
public static SimpleExpression ne(java.lang.String propertyName, java.lang.Object value)
Apply a "not equal" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
neOrIsNotNull
public static Criterion neOrIsNotNull(java.lang.String propertyName, java.lang.Object value)
Apply a "not equal" constraint to the named property. If the value is null, instead apply "is not null".- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
ne(java.lang.String, java.lang.Object),isNotNull(java.lang.String)
-
like
public static SimpleExpression like(java.lang.String propertyName, java.lang.Object value)
Apply a "like" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
like
public static SimpleExpression like(java.lang.String propertyName, java.lang.String value, MatchMode matchMode)
Apply a "like" constraint to the named property using the provided match mode- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparisonmatchMode- The match mode to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
ilike
public static Criterion ilike(java.lang.String propertyName, java.lang.Object value)
A case-insensitive "like" (similar to Postgres ilike operator)- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
LikeExpression
-
ilike
public static Criterion ilike(java.lang.String propertyName, java.lang.String value, MatchMode matchMode)
A case-insensitive "like" (similar to Postgres ilike operator) using the provided match mode- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparisonmatchMode- The match mode to use in comparison- Returns:
- The Criterion
- See Also:
LikeExpression
-
gt
public static SimpleExpression gt(java.lang.String propertyName, java.lang.Object value)
Apply a "greater than" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
lt
public static SimpleExpression lt(java.lang.String propertyName, java.lang.Object value)
Apply a "less than" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
le
public static SimpleExpression le(java.lang.String propertyName, java.lang.Object value)
Apply a "less than or equal" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
ge
public static SimpleExpression ge(java.lang.String propertyName, java.lang.Object value)
Apply a "greater than or equal" constraint to the named property- Parameters:
propertyName- The name of the propertyvalue- The value to use in comparison- Returns:
- The Criterion
- See Also:
SimpleExpression
-
between
public static Criterion between(java.lang.String propertyName, java.lang.Object low, java.lang.Object high)
Apply a "between" constraint to the named property- Parameters:
propertyName- The name of the propertylow- The low valuehigh- The high value- Returns:
- The Criterion
- See Also:
BetweenExpression
-
in
public static Criterion in(java.lang.String propertyName, java.lang.Object... values)
Apply an "in" constraint to the named property.- Parameters:
propertyName- The name of the propertyvalues- The literal values to use in the IN restriction- Returns:
- The Criterion
- See Also:
InExpression
-
in
public static Criterion in(java.lang.String propertyName, java.util.Collection values)
Apply an "in" constraint to the named property.- Parameters:
propertyName- The name of the propertyvalues- The literal values to use in the IN restriction- Returns:
- The Criterion
- See Also:
InExpression
-
isNull
public static Criterion isNull(java.lang.String propertyName)
Apply an "is null" constraint to the named property- Parameters:
propertyName- The name of the property- Returns:
- Criterion
- See Also:
NullExpression
-
isNotNull
public static Criterion isNotNull(java.lang.String propertyName)
Apply an "is not null" constraint to the named property- Parameters:
propertyName- The property name- Returns:
- The Criterion
- See Also:
NotNullExpression
-
eqProperty
public static PropertyExpression eqProperty(java.lang.String propertyName, java.lang.String otherPropertyName)
Apply an "equal" constraint to two properties- Parameters:
propertyName- One property nameotherPropertyName- The other property name- Returns:
- The Criterion
- See Also:
PropertyExpression
-
neProperty
public static PropertyExpression neProperty(java.lang.String propertyName, java.lang.String otherPropertyName)
Apply a "not equal" constraint to two properties- Parameters:
propertyName- One property nameotherPropertyName- The other property name- Returns:
- The Criterion
- See Also:
PropertyExpression
-
ltProperty
public static PropertyExpression ltProperty(java.lang.String propertyName, java.lang.String otherPropertyName)
Apply a "less than" constraint to two properties- Parameters:
propertyName- One property nameotherPropertyName- The other property name- Returns:
- The Criterion
- See Also:
PropertyExpression
-
leProperty
public static PropertyExpression leProperty(java.lang.String propertyName, java.lang.String otherPropertyName)
Apply a "less than or equal" constraint to two properties- Parameters:
propertyName- One property nameotherPropertyName- The other property name- Returns:
- The Criterion
- See Also:
PropertyExpression
-
gtProperty
public static PropertyExpression gtProperty(java.lang.String propertyName, java.lang.String otherPropertyName)
Apply a "greater than" constraint to two properties- Parameters:
propertyName- One property nameotherPropertyName- The other property name- Returns:
- The Criterion
- See Also:
PropertyExpression
-
geProperty
public static PropertyExpression geProperty(java.lang.String propertyName, java.lang.String otherPropertyName)
Apply a "greater than or equal" constraint to two properties- Parameters:
propertyName- One property nameotherPropertyName- The other property name- Returns:
- The Criterion
- See Also:
PropertyExpression
-
and
public static LogicalExpression and(Criterion lhs, Criterion rhs)
Return the conjunction of two expressions- Parameters:
lhs- One expressionrhs- The other expression- Returns:
- The Criterion
-
and
public static Conjunction and(Criterion... predicates)
Return the conjunction of multiple expressions- Parameters:
predicates- The predicates making up the initial junction- Returns:
- The conjunction
-
or
public static LogicalExpression or(Criterion lhs, Criterion rhs)
Return the disjunction of two expressions- Parameters:
lhs- One expressionrhs- The other expression- Returns:
- The Criterion
-
or
public static Disjunction or(Criterion... predicates)
Return the disjunction of multiple expressions- Parameters:
predicates- The predicates making up the initial junction- Returns:
- The conjunction
-
not
public static Criterion not(Criterion expression)
Return the negation of an expression- Parameters:
expression- The expression to be negated- Returns:
- Criterion
- See Also:
NotExpression
-
sqlRestriction
public static Criterion sqlRestriction(java.lang.String sql, java.lang.Object[] values, Type[] types)
Create a restriction expressed in SQL with JDBC parameters. Any occurrences of {alias} will be replaced by the table alias.- Parameters:
sql- The SQL restrictionvalues- The parameter valuestypes- The parameter types- Returns:
- The Criterion
- See Also:
SQLCriterion
-
sqlRestriction
public static Criterion sqlRestriction(java.lang.String sql, java.lang.Object value, Type type)
Create a restriction expressed in SQL with one JDBC parameter. Any occurrences of {alias} will be replaced by the table alias.- Parameters:
sql- The SQL restrictionvalue- The parameter valuetype- The parameter type- Returns:
- The Criterion
- See Also:
SQLCriterion
-
sqlRestriction
public static Criterion sqlRestriction(java.lang.String sql)
Apply a constraint expressed in SQL with no JDBC parameters. Any occurrences of {alias} will be replaced by the table alias.- Parameters:
sql- The SQL restriction- Returns:
- The Criterion
- See Also:
SQLCriterion
-
conjunction
public static Conjunction conjunction()
Group expressions together in a single conjunction (A and B and C...). This form creates an empty conjunction. SeeJunction.add(Criterion)- Returns:
- Conjunction
-
conjunction
public static Conjunction conjunction(Criterion... conditions)
Group expressions together in a single conjunction (A and B and C...).- Parameters:
conditions- The initial set of conditions to put into the Conjunction- Returns:
- Conjunction
-
disjunction
public static Disjunction disjunction()
Group expressions together in a single disjunction (A or B or C...). This form creates an empty disjunction. SeeJunction.add(Criterion)- Returns:
- Conjunction
-
disjunction
public static Disjunction disjunction(Criterion... conditions)
Group expressions together in a single disjunction (A or B or C...).- Parameters:
conditions- The initial set of conditions to put into the Disjunction- Returns:
- Conjunction
-
allEq
public static Criterion allEq(java.util.Map<java.lang.String,?> propertyNameValues)
Apply an "equals" constraint to each property in the key set of a Map- Parameters:
propertyNameValues- a map from property names to values- Returns:
- Criterion
- See Also:
Conjunction
-
isEmpty
public static Criterion isEmpty(java.lang.String propertyName)
Constrain a collection valued property to be empty- Parameters:
propertyName- The name of the collection property- Returns:
- The Criterion
- See Also:
EmptyExpression
-
isNotEmpty
public static Criterion isNotEmpty(java.lang.String propertyName)
Constrain a collection valued property to be non-empty- Parameters:
propertyName- The name of the collection property- Returns:
- The Criterion
- See Also:
NotEmptyExpression
-
sizeEq
public static Criterion sizeEq(java.lang.String propertyName, int size)
Constrain a collection valued property by size- Parameters:
propertyName- The name of the collection propertysize- The size to use in comparison- Returns:
- The Criterion
- See Also:
SizeExpression
-
sizeNe
public static Criterion sizeNe(java.lang.String propertyName, int size)
Constrain a collection valued property by size- Parameters:
propertyName- The name of the collection propertysize- The size to use in comparison- Returns:
- The Criterion
- See Also:
SizeExpression
-
sizeGt
public static Criterion sizeGt(java.lang.String propertyName, int size)
Constrain a collection valued property by size- Parameters:
propertyName- The name of the collection propertysize- The size to use in comparison- Returns:
- The Criterion
- See Also:
SizeExpression
-
sizeLt
public static Criterion sizeLt(java.lang.String propertyName, int size)
Constrain a collection valued property by size- Parameters:
propertyName- The name of the collection propertysize- The size to use in comparison- Returns:
- The Criterion
- See Also:
SizeExpression
-
sizeGe
public static Criterion sizeGe(java.lang.String propertyName, int size)
Constrain a collection valued property by size- Parameters:
propertyName- The name of the collection propertysize- The size to use in comparison- Returns:
- The Criterion
- See Also:
SizeExpression
-
sizeLe
public static Criterion sizeLe(java.lang.String propertyName, int size)
Constrain a collection valued property by size- Parameters:
propertyName- The name of the collection propertysize- The size to use in comparison- Returns:
- The Criterion
- See Also:
SizeExpression
-
naturalId
public static NaturalIdentifier naturalId()
Consider using any of the natural id based loading stuff from session instead, especially in cases where the restriction is the full set of natural id values.- Returns:
- The Criterion
- See Also:
NaturalIdentifier,Session.byNaturalId(Class),Session.byNaturalId(String),Session.bySimpleNaturalId(Class),Session.bySimpleNaturalId(String)
-
-