【发布时间】:2015-07-20 01:05:09
【问题描述】:
我即将使用 JPA 2.1 的新功能。其中之一是命名实体图。
如果我的实体有两个图表,我可以在查询中使用它们吗?
EntityGraph graph1 = this.em.getEntityGraph("graph.Order.items");
EntityGraph graph2 = this.em.getEntityGraph("graph.Order.address");
例如,如下所示
Map hints = new HashMap();
hints.put("javax.persistence.fetchgraph", graph1);
hints.put("javax.persistence.fetchgraph", graph2);
Order order = this.em.find(Order.class, orderId, hints);
或
entityManager.setHint("javax.persistence.fetchgraph", graph1);
entityManager.setHint("javax.persistence.fetchgraph", graph2);
原因是我的其他查询可能只需要已定义图表中的一个。
【问题讨论】:
-
不在一个查询中。您可以拥有一个带有子实体图的实体图。