Class Restrictions

java.lang.Object
org.hibernate.criterion.Restrictions
Direct Known Subclasses:
Expression

public class Restrictions extends Object
The 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:
  • Method Details

    • idEq

      public static Criterion idEq(Object value)
      Apply an "equal" constraint to the identifier property
      Parameters:
      value -
      propertyName -
      Returns:
      Criterion
    • eq

      public static SimpleExpression eq(String propertyName, Object value)
      Apply an "equal" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • ne

      public static SimpleExpression ne(String propertyName, Object value)
      Apply a "not equal" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • like

      public static SimpleExpression like(String propertyName, Object value)
      Apply a "like" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • like

      public static SimpleExpression like(String propertyName, String value, MatchMode matchMode)
      Apply a "like" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • ilike

      public static Criterion ilike(String propertyName, String value, MatchMode matchMode)
      A case-insensitive "like", similar to Postgres ilike operator
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • ilike

      public static Criterion ilike(String propertyName, Object value)
      A case-insensitive "like", similar to Postgres ilike operator
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • gt

      public static SimpleExpression gt(String propertyName, Object value)
      Apply a "greater than" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • lt

      public static SimpleExpression lt(String propertyName, Object value)
      Apply a "less than" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • le

      public static SimpleExpression le(String propertyName, Object value)
      Apply a "less than or equal" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • ge

      public static SimpleExpression ge(String propertyName, Object value)
      Apply a "greater than or equal" constraint to the named property
      Parameters:
      propertyName -
      value -
      Returns:
      Criterion
    • between

      public static Criterion between(String propertyName, Object lo, Object hi)
      Apply a "between" constraint to the named property
      Parameters:
      propertyName -
      lo - value
      hi - value
      Returns:
      Criterion
    • in

      public static Criterion in(String propertyName, Object[] values)
      Apply an "in" constraint to the named property
      Parameters:
      propertyName -
      values -
      Returns:
      Criterion
    • in

      public static Criterion in(String propertyName, Collection values)
      Apply an "in" constraint to the named property
      Parameters:
      propertyName -
      values -
      Returns:
      Criterion
    • isNull

      public static Criterion isNull(String propertyName)
      Apply an "is null" constraint to the named property
      Returns:
      Criterion
    • eqProperty

      public static PropertyExpression eqProperty(String propertyName, String otherPropertyName)
      Apply an "equal" constraint to two properties
    • neProperty

      public static PropertyExpression neProperty(String propertyName, String otherPropertyName)
      Apply a "not equal" constraint to two properties
    • ltProperty

      public static PropertyExpression ltProperty(String propertyName, String otherPropertyName)
      Apply a "less than" constraint to two properties
    • leProperty

      public static PropertyExpression leProperty(String propertyName, String otherPropertyName)
      Apply a "less than or equal" constraint to two properties
    • gtProperty

      public static PropertyExpression gtProperty(String propertyName, String otherPropertyName)
      Apply a "greater than" constraint to two properties
    • geProperty

      public static PropertyExpression geProperty(String propertyName, String otherPropertyName)
      Apply a "greater than or equal" constraint to two properties
    • isNotNull

      public static Criterion isNotNull(String propertyName)
      Apply an "is not null" constraint to the named property
      Returns:
      Criterion
    • and

      public static LogicalExpression and(Criterion lhs, Criterion rhs)
      Return the conjuction of two expressions
      Parameters:
      lhs -
      rhs -
      Returns:
      Criterion
    • or

      public static LogicalExpression or(Criterion lhs, Criterion rhs)
      Return the disjuction of two expressions
      Parameters:
      lhs -
      rhs -
      Returns:
      Criterion
    • not

      public static Criterion not(Criterion expression)
      Return the negation of an expression
      Parameters:
      expression -
      Returns:
      Criterion
    • sqlRestriction

      public static Criterion sqlRestriction(String sql, Object[] values, Type[] types)
      Apply a constraint expressed in SQL, with the given JDBC parameters. Any occurrences of {alias} will be replaced by the table alias.
      Parameters:
      sql -
      values -
      types -
      Returns:
      Criterion
    • sqlRestriction

      public static Criterion sqlRestriction(String sql, Object value, Type type)
      Apply a constraint expressed in SQL, with the given JDBC parameter. Any occurrences of {alias} will be replaced by the table alias.
      Parameters:
      sql -
      value -
      type -
      Returns:
      Criterion
    • sqlRestriction

      public static Criterion sqlRestriction(String sql)
      Apply a constraint expressed in SQL. Any occurrences of {alias} will be replaced by the table alias.
      Parameters:
      sql -
      Returns:
      Criterion
    • conjunction

      public static Conjunction conjunction()
      Group expressions together in a single conjunction (A and B and C...)
      Returns:
      Conjunction
    • disjunction

      public static Disjunction disjunction()
      Group expressions together in a single disjunction (A or B or C...)
      Returns:
      Conjunction
    • allEq

      public static Criterion allEq(Map 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
    • isEmpty

      public static Criterion isEmpty(String propertyName)
      Constrain a collection valued property to be empty
    • isNotEmpty

      public static Criterion isNotEmpty(String propertyName)
      Constrain a collection valued property to be non-empty
    • sizeEq

      public static Criterion sizeEq(String propertyName, int size)
      Constrain a collection valued property by size
    • sizeNe

      public static Criterion sizeNe(String propertyName, int size)
      Constrain a collection valued property by size
    • sizeGt

      public static Criterion sizeGt(String propertyName, int size)
      Constrain a collection valued property by size
    • sizeLt

      public static Criterion sizeLt(String propertyName, int size)
      Constrain a collection valued property by size
    • sizeGe

      public static Criterion sizeGe(String propertyName, int size)
      Constrain a collection valued property by size
    • sizeLe

      public static Criterion sizeLe(String propertyName, int size)
      Constrain a collection valued property by size
    • naturalId

      public static NaturalIdentifier naturalId()