web-dev-qa-db-ja.com

SpringFrameworkのデフォルトの分離レベル

service layerに、データベースの更新機能を実行するメソッドがあります。

@Transactional(propagation = Propagation.REQUIRES_NEW)
public void update(final Object obj){
    // some code here
}

ここで、Springフレームワークによって設定されたこのメソッドの分離レベルを知りたいですか?

私はSpringの初心者ですが、transactionsに慣れたいと思っていました。

デッドロックを回避し、同じユーザーが異なるブラウザからレコードを更新しようとするのを防ぐために、いくつかのベストプラクティスと設定方法を共有してください分離レベル

22
Sekhar

docs(Isolation.DEFAULT によると、

基盤となるデータストアのデフォルトの分離レベルを使用します。

@Transactionalアノテーションを使用しているので、そこで分離レベルを設定します。例:

@Transactional(propagation=Propagation.REQUIRES_NEW, isolation=Isolation.SERIALIZABLE)
14
beny23