我正在尝试从hibernate迁移到jpa,遇到了hibernate标准的限制如何将其转换为jpa?

ki0zmccv  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(354)

是否仍然可以在不使用hibernate的情况下将下面的代码转换为jpa?我四处看了看,什么也没发现。提前谢谢!
add(restrictions.ilike(fieldname、fieldvalue、matchmode.anywhere));

kpbwa7wx

kpbwa7wx1#

因此,您将拥有一个jpa criteria对象,您可以在该对象上调用where方法并传递一个 predicate 数组。类似于

String fieldValue = "search terms";
    CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder();
    CriteriaQuery<AType> criteriaQuery = criteriaBuilder.createQuery(AType.class);
    Root<AType> somePath = criteriaQuery.from(AType.class);
    criteriaQuery.where(criteriaBuilder.like(criteriaBuilder.upper(somePath.get("fieldName")),
            "%" + fieldValue.toUpperCase() + "%"));
    List<AType> result = entityManager.createQuery(criteriaQuery).getResultList();

相关问题