首页 > 解决方案 > JPA CriteriaBuilder 相等阻塞

问题描述

当我使用 CriteriaBuilder.equal() 创建谓词并将其传递给 CriteriaQuery.where() 时,标准构建器遇到了一些奇怪的问题,因此我可以通过 where 子句过滤选择。一切运行良好,但是当涉及到 Criteria.equal 的部分时,它会终止它之后的所有内容。我不知道这是怎么回事。

    CriteriaBuilder builder = getCurrentSession().getCriteriaBuilder();
    CriteriaQuery<User> criteria = builder.createQuery(User.class);
    Root<User> UserRoot = criteria.from(User.class);
    Predicate predicate = builder.equal(UserRoot.get("google_id"), googleId);
    criteria.select(UserRoot).where(predicate);
    return getCurrentSession().createQuery(criteria).getSingleResult();

在我在每行之后打印之后,他们打印到第 4 行之后,一切都消失了,它没有任何回报。除标准外的所有其他操作都运行良好。

标签: javahibernatejpacriteria

解决方案


推荐阅读