Java/Hibernate JPA:enersitanceType.table_per_classおよびids
-
01-10-2019 - |
質問
Hibernate JPAを使用しています。
私がこれらのクラスを持っているとします:
AbstractPerson
|--> ConcreteEmployee
|--> ConcreteCustomer
具体的なクラスに独立したIDを持つようにする方法はありますか?
internitAnceType.table_per_classを使用しています。
解決
Hibernate Annotationsリファレンスガイドから:
2.2.4.1。クラスごとにテーブル
この戦略には、JPA仕様、Hibernateリファレンスドキュメント、Hibernate in Action、その他多くの場所で説明されている多くの欠点があります(特に多型クエリと関連性)。冬眠は彼らのほとんどを回避し、この戦略を使用してこの戦略を実装しています
SQL UNION
クエリ。一般に、相続階層の最上位レベルに使用されます。@Entity @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) public class Flight implements Serializable { ... }
この戦略は、それらが双方向であることを条件に、1対多数の協会をサポートします。 この戦略はサポートしていません
IDENTITY
ジェネレーター戦略:IDは、いくつかのテーブルで共有する必要があります。したがって、この戦略を使用する場合、使用しないでくださいAUTO
またはIDENTITY
.
だから私はあなたが望むものがサポートされていないのではないかと心配しています(そして私は使用することをお勧めします GenerationType.TABLE
).
所属していません StackOverflow