Spring/Hibernate および Postgres データベースで EJB3 JPA を使用する。
エンティティの複数のインスタンスを作成し、1 つの (大規模な) トランザクション内で EntityManager を使用してこれらを永続化するループがあります。
このプロセス中に JPQL 選択クエリを実行して、これらのエンティティに追加する他のデータを見つけられるようにしたいと考えています。getResultList
ただし、インスタンスの を呼び出すと、Query
作成中のエンティティに関連する恐ろしい「保存されていない一時的な」例外が発生します。
クエリ/Hibernate が保存されていないトランジェントを無視し、選択クエリを実行する方法はありますか? クエリは作成中のエンティティとは関係がないため、なぜ不平を言っているのかわかりません。
@Transactional(propagation=SUPPORTS, readOnly=true)
エンティティの作成と同じトランザクション/セッション内でクエリが実行されるように、クエリを実行するメソッドがマークされます。