永続化されたオブジェクトの ID を取得したい。EJB 3.1 を使用しています。
これを行うために準備済みステートメントを使用していましたが、完全に機能しました。
ResultSet generatedKeys = statement.getGeneratedKeys();
if (generatedKeys.next()) {
myId = generatedKeys.getLong(1);
}
私は検索してきましたが、EJB でこれを機能させる方法について何も述べていませんでした。オブジェクトをデータベースに永続化するために使用される私の方法は次のとおりです。
public void create(T entity) {
getEntityManager().persist(entity);
//Something to return entity's id???
}
私が使用している永続化プロバイダーは次のとおりです。
org.eclipse.persistence.jpa.PersistenceProvider