不知道是不是我觉得JPA的条件查询很难。 接下来要做什么才能获取名称 = :tagNam
的标签 Tag getTagByName(String tagName){
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Tag> cq = cb.createQuery(Tag.class);
Root<Tag> root = cq.from(Tag.class);
**//what to do next in order to get Tag(s) with name = :tagNam**
}
Tag
是一个具有字段 name
我浏览过:
- http://docs.oracle.com/javaee/6/tutorial/doc/gjivm.html
- http://www.ibm.com/developerworks/library/j-typesafejpa/
- http://www.programcreek.com/java-api-examples/javax.persistence.criteria.CriteriaQuery
但无法掌握概念。是否有简单的分步教程或全面的教程?
我也很沮丧,因为我被要求(根据教程)使用 Tag_
这当然不能解决。
最佳答案
试试这个:
CriteriaQuery<Tag> cq = cb.createQuery(Tag.class);
Root<Tag> tag = cq.from(Tag.class);
cq.where(cb.equal(tag.get(Tag_.name), tagName));
这改编自 Oracle 文档(您的第一个链接)。
关于java - 基于 JPA 的 Criteria 查询,用于按字段名称查找实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32882293/