JPAを使用するときに、新しいオブジェクトの自動生成IDを効率的に見つける方法は?
-
30-09-2019 - |
質問
@IDが注釈されている属性があります。 IDは、オブジェクトを持続するときに自動的に生成されます。つまり、オブジェクトを保持する前にID値は定義されていません。それを持続した後、ID(データベース内)がありますが、残念ながら、DBからリロードしない限り、フィールドは依然としてnullのままです。生成されたIDを見つける簡単な方法はありますか?またはより良い:それがフィールドに書き込まれることを構成するために?
前もって感謝します
解決
IDはフラッシュ後に割り当てられます。と仮定します Foo
エンティティには id
標準で注釈が付けられた属性 @Id @GeneratedValue
注釈、次のコードが機能します。
Foo foo = new Foo();
//...
em.persist(foo);
em.flush();
assert foo.getId() != null;
所属していません StackOverflow