Java 如何在没有createCriteria()的情况下实现dao以获取列表,并使用以下属性获取列表?

Java 如何在没有createCriteria()的情况下实现dao以获取列表,并使用以下属性获取列表?,java,spring,hibernate,deprecated,createcriteria,Java,Spring,Hibernate,Deprecated,Createcriteria,我正在Spring-5中实现DAO,Maven项目使用Hibernate 5,以便在 sessionFactory.getCurrentSession().createCriteria()但它现在已被弃用,我想实现它 我希望这三个函数在新方法中被替换为createCiteria() @Override public List<Department> list(Integer offset, Integer maxResults) { return sessionFac

我正在Spring-5中实现DAO,Maven项目使用Hibernate 5,以便在
sessionFactory.getCurrentSession().createCriteria()
但它现在已被弃用,我想实现它

我希望这三个函数在新方法中被替换为
createCiteria()

@Override
public List<Department> list(Integer offset, Integer maxResults) {
        return sessionFactory.getCurrentSession()
                .createCriteria(Department.class)
                .setFirstResult(offset!=null?offset:0)
                .setMaxResults(maxResults!=null?maxResults:10)
                .addOrder(Order.asc("department_name"))
                .list();
}
并且有限制。eq()

@覆盖
公共列表getAllDepartmentsByDepartmentTypeId(内部部门类型id){
return session.getCurrentSession()
.createCriteria(Department.class)
.addOrder(Order.asc(“部门名称”))
.add(Restrictions.eq(“department\u type\u id”,department\u type\u id))
.list();
}
我希望实现这三种方法,以便 我可以使用而不是不推荐使用的createCriteria()方法

改用并使用

builder.createQuery(...)
可以找到

@Override
public List<Department> getAllDepartmentsByDepartmentTypeId(int department_type_id) {   
    return session.getCurrentSession()
            .createCriteria(Department.class)
            .addOrder(Order.asc("department_name"))
            .add(Restrictions.eq("department_type_id", department_type_id))
            .list();
}
builder.createQuery(...)