Как мы уже знаем, критериальный запрос устарел в Hibernate 5. Это была такая полезная функция в предыдущих версиях Hibernate. И он по-прежнему работает лучше, чем HQL.Почему запрос критериев не рекомендуется в Hibernate 5?
В чем причина его устаревания в Hibernate 5?
А также этот вопрос не является дубликатом this question, поскольку я хочу знать причину отклонения запроса критериев.
Это из here.
Hibernate предлагает старую, унаследованную
org.hibernate.Criteria
API, который следует считать устаревшим. Никакая функция развития не будет нацелена на этих API. В конечном счете, характеристиками, специфичными для Hibernate, будут , портированные как расширения JPAjavax.persistence.criteria.CriteriaQuery
. Подробнее о APIorg.hibernate.Criteria
см. В разделе Запросы критериев устаревшего спящего режима.
Возможный дубликат [Hibernate 5 и типизированных запросов к критерию (JPA2)] (http://stackoverflow.com/questions/35824417/hibernate-5-and-typed-criteria-queries-jpa2) –
Из [docs] (https://docs.jboss.org/hibernate/orm/4.2/devguide/en-US/html/apb.html): _ «Новая разработка должна быть сосредоточена на API JPA' javax.persistence.criteria.CriteriaQuery'. В конце концов, характеристики критериев, зависящих от Hibernate, будут перенесены как расширения JPA 'javax.persistence.criteria.CriteriaQuery'.» _ Кроме того, если вы хотите писать разборчивые запросы (вместо использования неуклюжего API критериев), посмотрите [QueryDSL] (http://www.querydsl.com/). –
@MickMnemonic Не совсем дубликат. Я редактировал свой вопрос. –