Hibernate5.2中关于Criteria的用法

Hibernate5.2中已不推荐使用Criteria,而是使用基于JPA规范的CriteriaQuery查询

Hibernate提供了一个较旧的遗留org.hibernate.CriteriaAPI,应被视为不推荐使用。没有功能开发将针对这些API。
最终,特定于Hibernate的标准功能将被移植到JPA的扩展javax.persistence.criteria.CriteriaQuery。
有关org.hibernate.CriteriaAPI的详细信息,请参阅传统Hibernate条件查询。

上述来自 Hibernate5.2.10官方文档

简单的使用流程如下

public List findByAddressLike(String address) {
        //这里使用JPA规范的CriteriaQuery
        CriteriaBuilder crb=currentSession().getCriteriaBuilder();
        CriteriaQuery crq=crb.createQuery(Custom.class);
        Root root=crq.from(Custom.class);
        crq.select(root);
        crq.where(crb.like(root.get("address"),address));
        return currentSession().createQuery(crq).getResultList();
 }

更多使用细节与方法请查看 Hibernate5.2.10官方文档

你可能感兴趣的:(Java,hibernate,jpa)