【发布时间】:2012-10-28 11:22:30
【问题描述】:
我有这个来自实体 Aa、Bb、Cc 的结构:
- Aa 有一个 Bb 列表
- Bb 有一个抄送列表
-
public class Aa{
@OneToMany
List<Bb> listBb;
}
public class Bb{
@OneToMany
List<Bb> listCc;
}
我想创建一个 JPA Criteria API 查询以通过 C 的 id 池化 Aa:
public A getAaByCcId(long id) {...}
在本机 sql 中,我会尝试左连接(两次)。我如何使用 JPA 做到这一点?
【问题讨论】:
-
你是否也有其他方向的映射,所以 Cc 有一个 Bb,Bb 有一个 Aa?如果是这样,那么沿着这些查询可能是最容易的。
-
是的,我也有@ManyToOne,但它很懒
-
懒惰对查询无关紧要 - 如果映射存在,您可以在查询中使用它。