0

このクラスがあるとしましょう

@MappedSuperclass
public abstract class A{...}

そしてこのクラス

@Entity
@Table
public class B extends {...}

これをポリモーフィカルに処理できますか?

A aParent = serviceLayer.getSubClass(Long id)

またはこのように:

List<A> listOfItems = serviceLayer.getSubClassAsList();

両方のステートメントが機能しますか? それぞれ aと aを想定しgetSubClass(Long id)getSubClassAsList返しますか?BList<B>

4

1 に答える 1

0

質問は明確ではありませんが、hibernate はどのテーブルに対してリクエストを行うかを認識できないため、スーパー クラスに対してクエリを実行することはできません。これは、@Table注釈がBスーパークラスではなく子クラスにあるため、認識できますA

つまり、結果エンティティ B を変数 A (Java 継承のもの) に割り当てることはできますが、HQL でこのようなものを書くことはできfrom A ...ません。Object Reading Mind(開発者の) ;) ) の略ではありません。

于 2013-03-19T14:33:00.487 に答える