私はいくつかの設定に基づいてテーブルを初期化する必要があるスプリングブートアプリケーションを持っています。私は@Transactional
を使って管理された取引を使用しています。私の問題は、いつアプリケーションがDBトランザクションを作成する準備ができているのかわかりません。 私は設定を読み取り、表を更新Beanを作成したが、それはその時点で例外を取得します。私はsprintbootを待っていれば起動して、HTTPリクエストを通して同じ取引をするためにすることを試みましたスプリングブートの起動時にテーブルを初期化する
Could not obtain transaction-synchronized Session for current thread
、問題はありません。だからタイミングの問題があるようです。私も@PostConstruct
にコードを移動しようとしましたが、問題は解決しません。
DBトランザクションの準備ができていることを確認するにはどうすればよいですか?どんな助けでも大歓迎です。
ヒントをお寄せいただきありがとうございます。私は実際にSpring 4.2以降で利用可能な注釈@EventListenerを使用しました。 – Aarkan
さらに良い! :) –