在一对多映射的条件下使用新的JPA

时间:2013-07-11 12:04:39

标签: java jpa one-to-many jpa-2.1

JPA 2.1最近已经发布,似乎有一个新功能。

我在some blogsEclipselink documentation中找到了它。

我该如何使用它?

我有两个实体相互链接@OneToMany和@JoinColumn。但是我必须过滤掉一些第二个实体。

博客示例显示:

SELECT s.name, COUNT(p)
  FROM Suppliers s LEFT JOIN s.products p
    ON p.status = 'inStock'
 GROUP BY s.name

如何在映射中使用它?

1 个答案:

答案 0 :(得分:1)

ON子句用于查询,而不是映射。

如果您想为映射添加其他条件,则这不是JPA在规范中支持的内容。

使用EclipseLink,您可以使用DescriptorCustomizer并设置映射的selectionCriteria。

请参阅, http://wiki.eclipse.org/EclipseLink/Examples/JPA/MappingSelectionCriteria