2012-04-30 6 views
2

Play/JPAに強制的にエンティティIDを連続させる最良の方法はありますか? (They are notエンティティIDを順番に生成するようにPlay 1.x/JPAを設定しますか?

ひとつのアイデアは、私自身のModelBaseクラスにplay.db.jpa.Modelをコピーし、(少なくともMySQL用)GenerationType.IDENTITYに生成戦略を変更することです。

  1. これが最適なソリューションですか?
  2. 既存のデータを使用して本番ウェブサイトでこれを行う(モデルベースクラスを変更する)ことはできますか?これは安全ですか?

答えて

3

エンティティに純粋なシーケンス(ギャップなし)が必要な場合は、IDを使用せず、データベースで新しいシーケンスを作成し、モデル内の余分なフィールドにリンクしてください。

IDに隙間がないように強制するのと比較して、頭痛が軽減され、簡単になります。

関連する問題