こんばんは。データベース接続を使用して jpa エンティティを作成しようとすると、いくつかの例外が発生します。IDが存在しないことについての何か。一部のテーブルに主キーがないという事実と関係があると思われます。各エンティティを調べて主キーを指定すると、エラーが解消されるためです。主キーを持たないテーブルにエンティティを作成するにはどうすればよいですか? 私は websphere 統合開発者 (wid) を使用しています。
質問する
124 次
1 に答える
1
すべてのエンティティには Id があり、それがどのように機能するか、より正確には仕様に記載されている方法です。データベースにエンティティにマップしたいテーブルがあり、そのテーブルに主キーがない場合は、いくつかのオプションを利用できます。
- 生成された ID (JPA または DB によって管理される) をテーブルに追加します - その自由がある場合に推奨されます。
- テーブル内のいくつかの既存の列をエンティティ ID として使用します (ID が一意になるように、必要最小限の数字を選択します)。
- 組み合わせが一意ではないという理論上の可能性がある場合でも、すべての列を使用します (テーブル/データベースを台無しにするため、Java レイヤーでもそれが起こらないように注意する必要があります)。
- ...私が今思いつかないより多くの選択肢があるかもしれません
JPA と CompositeKey を検索することで、代替 2 と 3 を実行する方法に関する情報を簡単に見つけることができます。
幸運を
于 2012-03-18T23:08:08.207 に答える