クラスの属性として 2 つのエンティティを持つ非エンティティ クラスで 2 つのエンティティを結合したいと考えています。
これを例にとります:
@Entity
public class A {
}
@Entity
public class B {
}
public class C {
private A a;
private B b;
}
SqlResultSetMapping を使用して解決策を見つけましたが、20 列以上あるため、A と B の各列を手動で指定したくありません。
私が見つけたもう 1 つの解決策は、オブジェクト配列結果 [] を返す JPQL クエリを使用することでした。ここで、結果 [0] は A で、結果 [1] は B です。
私のアイデアは両方を組み合わせたもので、次のように考えています。
@SqlResultSetMapping(targetClass=C.class,
entities={
@EntityResult (targetClass=A.class)
@EntityResult (targetClass=B.class)
}
A と B の両方に複数の列がある場合、問題を解決する最善の方法はどれですか?