BaseClass と、BaseClass を拡張する ExtendedClass の 2 つのクラスがあります。Hibernate を使用して ExtendedClass を単一の DB テーブルに永続化したいのですが、BaseClass のすべてのフィールドも永続化したいと考えています。
table-per-class パラダイムを使用したいと思いますが、Hibernate に BaseClass の DB テーブルを作成させたくありません (また @Id を BaseClass に追加したくもありません)。これを抑える方法はありますか?
私はこのようなことをしています:
@Entity
class BaseClass {
int value1;
}
@Entity
@Table(name="extendedClasses")
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
class ExtendedClass extends BaseClass {
@Id long id;
int value2;
}
そして、DBに次のような単一のテーブルを持たせたい:
table extendedClasses
(
long id
int value1
int value2
)