Appendix B. The Criteria API
Criteria queries start by obtaining a Criteria
object from the Session
, using the
createCriteria()
method
to identify the primary class (and thus table) on which the query is to be
performed. Restrictions, projections, and orderings are then attached to the
query using the factories described below, making it a very powerful and
convenient interface.
The Criterion Factory
Hibernate provides the class
org.hibernate.criterion.Restrictions
as a factory
for creating the Criterion
instances you use to
narrow down the objects (rows) you want from criteria queries.
Restrictions
defines a bunch of static methods you
can invoke to conveniently create each of the standard
Criterion
implementations available in Hibernate,
using parameters you supply. These criteria are used to determine which
persistent objects from the database are included in the results of your
query. The following table provides a summary of the available
options.
Method | Parameters | Purpose |
allEq
| Map properties | A shortcut for requiring several properties to
have particular values. The keys of the supplied map are the names
of the properties you want to constrain, while the values in the
map are the target values each property must equal if an entity is
to be included in the query results. The returned
Criterion ensures that each named
property has the corresponding value. |
and
| Criterion lhs , Criterion rhs | Builds a compound
Criterion that requires both halves to be met in order for the whole to succeed. ... |
Get Harnessing Hibernate now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.