首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单JPA 2条件查询"where“条件

简单JPA 2条件查询"where“条件
EN

Stack Overflow用户
提问于 2012-05-14 10:18:34
回答 1查看 12.1K关注 0票数 3

我在学习jpa-hibernate基础知识。

我有一个关于获取所有用户的查询:

代码语言:javascript
复制
CriteriaBuilder cb = getEntityManager().getCriteriaBuilder();
        CriteriaQuery cq = cb.createQuery();
        cq.select(cq.from(Utente.class));
        return getEntityManager().createQuery(cq).getResultList();

现在,我想通过一个名为“鬼怪”的布尔字段进行筛选,其中它等于true (或者false,它取决于)。

翻译:

选择*从用户那里鬼= 0;

我必须使用cq.where()吗?多么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-14 10:31:45

是的,你必须使用cq.where()

试着做这样的事情:

代码语言:javascript
复制
Root<Utente> utente = cq.from(Utente.class);
boolean myCondition = true;    // or false
Predicate predicate = cb.equal(utente.get(Utente_.ghost), myCondition);
cq.where(predicate);

其中我使用了应该自动生成的规范元模型类Utente_。这避免了键入字段名时出错的风险,并提高了类型安全性。否则,您可以使用

代码语言:javascript
复制
Predicate predicate = cb.equal(utente.get("ghost"), myCondition);
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10581429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档