Criteria objects

Another way to create a fetch query is using criteria objects. This is more in tune with the object-oriented mindset. However, the real advantage that this brings is that this makes composing dynamic queries easier.

Criteria queries are composed from an object graph, and as new search criteria are added, new objects (Restrictions, Order, and so on) are added to the graph. This is especially very useful when you are building a report or search screen in your application, for example, navigating through items in an online store.

In its simplest form, a Criteria object is created, as follows:

Criteria criteria = session.createCriteria(Person.class);
List<Person> persons = criteria.list();

In this case, the Person entity is configured ...

Get Mastering 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.