Подтвердить что ты не робот

Устаревший метод createCriteria в Hibernate 5

Это вызов устарел:

session.createCriteria(Bus.class).list();

В исходных файлах я вижу это:

/** @deprecated */
@Deprecated
Criteria createCriteria(Class var1);

/** @deprecated */
@Deprecated
Criteria createCriteria(Class var1, String var2);

/** @deprecated */
@Deprecated
Criteria createCriteria(String var1);

/** @deprecated */
@Deprecated
Criteria createCriteria(String var1, String var2);

Но я не могу понять, какой метод мне нужно использовать вместо createCriteria.

4b9b3361

Ответ 1

Вместо Hibernate 5.2 + можно использовать следующие интерфейсы:

javax.persistence.criteria.CriteriaBuilder
javax.persistence.criteria.CriteriaQuery

// Create CriteriaBuilder
CriteriaBuilder builder = session.getCriteriaBuilder();

// Create CriteriaQuery
CriteriaQuery<YourClass> criteria = builder.createQuery(YourClass.class);

Ответ 2

из документации API:

@Deprecated Критерий createCriteria (класс persistentClass) Устаревшее. (начиная с 5.2) для сессии, используйте критерии JPA Создать экземпляр Criteria для данного класса (сущность или подклассы/разработчики). Параметры: persistentClass - класс, который является сущностью или имеет подклассы/реализации объекта Возвращает: Экземпляр критериев для манипуляции и выполнения

Поэтому он кратко говорит...

использовать критерии критериев JPA Создать критерии