Session
は使用しないでください およびトランザクション
そのようなあなたのダオのクラスメンバーとして。 Session / EntityManager
作業単位によってスコープが設定されていると想定されているため、スレッドセーフではありません。
現在の状態では、Spring DIがBeanをシングルトンとして作成するため、2つのスレッドが同時にdaoを使用すると、2番目のスレッドが両方の Session
を上書きします。 およびトランザクション
メンバーは、IllegalStateExcepionを取得すると思う理由です。
メソッドの変数として使用するか、Hibernateの特定のメソッドが必要ない場合は、Springで完全なJPA構成を取得し、 @ PersistenceContext / @ PersistenceUnit
> フレームワークにその問題を処理させるため。