Hibernate One-To-Many连接两列

时间:2013-01-28 16:31:51

标签: sql hibernate jpa

我有一个非常类似于以下内容的SQL查询:

select *
from parent p inner join child c on p.id = c.parent_id and c.type = 'PARENT_TYPE';

我正在尝试使用@ One-To-Many关联定义我的实体映射,以便我可以加载父对象,它将自动加载子对象。我不知道该怎么做,是如何正确地注释我的实体,以便在连接标准的第二部分(即the c.type = 'PARENT_TYPE'部分)正确发生。我尝试使用@FilterDef 然后在会话上启用过滤器并且它有效,但它似乎不是最佳解决方案。

1 个答案:

答案 0 :(得分:0)

如果您使用连接公式,您将失去其他能力(例如子选择查询获取优化)。为什么你要加入的两列不是一个键的一部分。引入由两列组成的嵌入式id类型,并使用该类型进行连接。