多態性抽象スーパークラスと MySQL ID 生成
Hibernate と MySQL を採用する Spring MVC アプリケーションでは、抽象スーパークラスと MySQL の ID を管理するという課題があります。それらのサブクラスが発生します。 GenerationType.IDENTITY は抽象スーパークラスと互換性がなく、MySQL はシーケンスをサポートしていません。この問題はどのように解決できますか?
まず、MySQL の制限を理解することが重要です。ID の生成とレコードの挿入を同時に行うことはできません。ただし、Hibernate はエンティティの挿入中にこの機能を期待します。
これに対処するために、「LAST_IDS」テーブルを実装できます。このテーブルは、関連する各エンティティに最後に割り当てられた ID を追跡します。次の手順は、このアプローチを使用して ID を生成および保持するプロセスの概要を示しています:
このアプローチを利用すると、ID生成と管理は、抽象スーパークラスと MySQL の制限と互換性があります。 Hibernate エンティティでの継承は、通常、PostgreSQL や Oracle などのデータベースで継承関係をサポートする場合にのみ使用する必要があることに注意してください。
以上がHibernate と MySQL を使用して Spring MVC アプリケーションで抽象スーパークラスの ID を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。