Hibernate provides three different ways to retrieve data. We have already discussed HQL and the use of native SQL queries; now we add criteria.
A criteria query uses a model of the information you’re interested in finding. For example, if you were interested in Customer objects whose first name matched “John,” you’d build a Customer object, set the first name to “John,” and use that model object for the query.
This lets you build nested, structured ...