2012-03-02 9 views
0

私は、私が持っている中央データベースのすべてのエントリを取得または見つける方法を作ることができるかどうかを調べようとしています。親抽象エンティティからすべての子エンティティをフェッチすることは可能ですか?

私のエンティティは次のとおりです。

指名(要約) - > Type1Nomination、その上Type2Nomination、Type3Nomination、。

ノミネーションテーブルはDBにもマップされており、すべてのタイプのノミネートの共通のプロパティ/カラムを持っています。残りは自明です。

私はそれを見て、ノミネートの種類をベースクラスにキャストする必要がありますか?これはサービスクラスで(抽象クラ​​スのDAOを作ることができないため)行われますが、私は正しいのでしょうか?

答えて

2

JPA/HibernateとJPA継承でこれを行うことができます。ノミネーションエンティティを照会するのと同じくらい簡単でなければなりません。

Select n From Nomination n 

は、抽象推論オブジェクトのリストを返す必要があります。

私はあなたのケースでは、特定のサブグループを取得するために

タイプは「Type1Nomination」「Type2Nomination」のが、これらのために収集した
Select n from nomination where n.type in :types 

のようなものをinキーワードに連動して型の列を使用して人々を見てきました

兄弟クエリでは、LEFT OUTER JOINクエリが厄介になる可能性があります。

関連する問題