2017-11-24 1 views
0

JPAエンティティグラフ:例:JPAエンティティグラフ:どのタイプに参加しますか?

注文 - OrderItemの - 商品

@NamedEntityGraph(name = "order", 
    attributeNodes = @NamedAttributeNode(value = "orderItems", subgraph = "orderItems"), 
    subgraphs = @NamedSubgraph(name = "orderItems", attributeNodes = @NamedAttributeNode("product"))) 

order -> orderItems and orderItem -> productにはjoinTypeはありませんなぜ?エンティティグラフのすべての結合はLEFT結合とみなされますか?

答えて

0

EntityGraphの目的は、結果グラフに含める内容を定義することです。

これは、結合タイプには影響しません。したがって、依存関係は、EntityGraphなしで読み込まれるのと同じ方法で読み込まれます。

+0

CriteriaQueryは結合タイプを指定できます。しかし、entityGraphを使用したfind()メソッドでは、joinで1つのSQLを使用してentityGraph内のすべてのエンティティをロードするため、結合タイプが必要です。この場合、結合タイプを指定する方法はありません。 – Sunnyday

関連する問題