【发布时间】:2017-03-20 13:55:55
【问题描述】:
我正在尝试查找所有具有一些嵌套元素的实体,并且嵌套元素具有元素集合,我需要通过这些集合的属性找到它。
应该是这样的
class A{
private B b;
}
class B{
private Collection<C> cCol;
}
class C{
private String name;
}
所以我想获取所有具有 B 元素的 A 元素,这些元素的 C 名称与给定参数匹配。
不确定如何使用 JPA Critieria API 进行操作。我知道 JPQL 中有谓词或 MEMEBER OF,但我需要按集合中元素的属性而不是集合成员进行搜索。
尝试过 root.get(a.b.c.name) 以及 root.fetch(a.b) 或 root.fetch(b.c) 之类的方法,但总是以非法 api 使用的一些例外情况告终
【问题讨论】:
标签: jpa criteria criteria-api