0

私は現在、開発中のモバイルアプリのバックエンド API になるプレイアプリに取り組んでいます。

今まで、jpa.ddl を更新するように設定していましたが、すべて正常に動作していました。モデルの 1 つに新しいフィールドを追加すると、データベースが変更されます。

ただし、私は本番環境の準備を進めており、プレイのドキュメントを含め、私が読んだすべてのものには、その機能をオフにして代わりに進化を使用するように記載されています. ただし、1.sql ファイルを作成していると、いくつかの問題が発生します。

  • モデルの一部として配列があり、それらがデータベースでどのように表現されているかわかりません
  • モデルの一部は他のモデルのインスタンスであり、オブジェクトがデータベースでどのように表現されているかわかりません

これまでは、Play/JPA/Hibernate が抽象化のレベルを提供していたため、データベースが実際にどのように構築されているかを気にする必要はありませんでした。しかし、自分でテーブルを手動で作成する必要があるように思われるので、これを行う正しい方法に関するドキュメントが見つかりません。

モデルのテーブルを作成するために手動で SQL を記述する必要がありますか? その場合、これらをデータベースでどのように表現すればよいですか?

編集:プレイ1.2.4を使用しています

4

1 に答える 1

3

はい、進化を行うには、オブジェクトをテーブルに変換する方法を知る必要があります。これは、JPA の仕組みを理解するのにも役立ちます。

これを行うには、データベースを調べて、自動 ddl 更新によってデータベースがどのように作成されるかを確認します。これについては、ネット上にもいくつかのドキュメントがあります。ここでの例: http://en.wikibooks.org/wiki/Java_Persistence . 第 4 章には、これを説明する図が含まれています。

于 2013-05-30T05:33:33.100 に答える