0

主キーを生成する @TableGenerator テクニックの利点は何ですか? この手法を使用する理由と、シーケンス名とジェネレーターの値を格納するために使用する 3 番目のテーブルを使用してデータを取得する方法は?

4

1 に答える 1

3

リンクから。http://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing#Table_sequencing

一意の ID を生成する方法はいくつかあります。データベースに依存しない戦略もあれば、組み込みのデータベース サポートを利用する戦略もあります。JPA は、GenerationType 列挙値 (TABLE、SEQUENCE、および IDENTITY) によって定義された ID 生成のいくつかの戦略をサポートします。使用するシーケンス戦略の選択は、パフォーマンス、同時実行性、移植性に影響するため重要です。

したがって、テーブル ジェネレーターを使用することを選択すると、データベース固有の機能を使用する必要がなくなります。これにより、後でデータベースを他の db プロバイダーに簡単に移行できます。そのため、後でデータベース プロバイダーを移行するかどうか、そのためにどれだけのパフォーマンスを犠牲にするかなどに基づいて決定を下す必要があります。

于 2013-01-02T08:53:02.567 に答える