Criteria API — это упрощённый, объектно-ориентированный интерфейс запросов в Hibernate, который позволяет разработчикам получать сущности из базы данных без написания SQL или HQL запросов. Это даёт интуитивный и удобный подход для создания динамических функций поиска.
Разработчики создают критерии поиска, комбинируя несколько экземпляров Criterion, которые получаются через фабричные методы класса Restrictions. Эти объекты критериев можно добавлять к запросу Criteria, чтобы точно указать, какие сущности нужно получить.
Criteria criteria = session.createCriteria(Entity.class);
criteria.add(Restrictions.eq("fieldName", value));
criteria.add(Restrictions.like("name", "%pattern%"));
List results = criteria.list();
Хотя Criteria API остаётся рабочим инструментом, в современных проектах на Hibernate обычно предпочитают HQL-запросы или JPA Criteria API для новой разработки, так как они предлагают больше возможностей и лучше интегрируются с актуальными стандартами.
Criteria API использует объекты Criterion, получаемые через factory методы класса Restrictions, для программного построения динамических запросов.
Новый — ещё не проверен сообществом
Вы