非識別子列の Hibernate JPA シーケンス
質問:
は可能ですか? Hibernate を使用して非主キー列のシーケンスベースの値を生成するJPA?
答え:
いいえ、Hibernate JPA は、非識別子列に対するシーケンスベースの値の生成を直接サポートしていません。 @GeneratedValue アノテーションは、自動番号を生成するために @Id とともにのみ使用されます。
回避策:
この機能を実現するには、次の回避策として別のエンティティを作成します。以下に示すように、生成された ID と元のエンティティとの 1 対 1 の関係:
@Entity public class GeneralSequenceNumber { @Id @GeneratedValue(...) private Long number; } @Entity public class MyEntity { @Id .. private Long id; @OneToOne(...) private GeneralSequnceNumber myVal; }
Inこのソリューションでは、元の MyEntity との関係を維持しながら、GeneralSequenceNumber エンティティがシーケンスの生成を管理します。
以上がHibernate JPA は非主キー列のシーケンスを生成できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。