2016-05-12 7 views
1

私はorg.springframework.transaction.annotation.Transactionalを使用していて、@Transactionalで注釈を付けたメソッドから呼び出すことができるメソッドを呼び出しています。呼び出されるメソッドがSpring @トランザクション境界内にあることを確認してください

私はこの問題を解決しないため、トランザクションの一部として呼び出したいメソッドは決してトランザクション境界で呼び出されるべきではなく、これを強制したいと思います。

@Transactionalで注釈を付けられたメソッドからこれらのメソッドが正常に呼び出されるようにするために使用できる注釈などはありますか?

答えて

1

最も単純なケースでは、デフォルトのPropagation.REQUIREDの代わりにPropagation.MANDATORY(つまり@Transactional(propagation=Propagation.MANDATORY))のトランザクション伝播を使用できます。

プログラマティックトランザクションを使用する場合は、TransactionStatusゲッターをチェックします。伝播がREQUIREDであっても、TransactionStatus.isNewTransaction()がfalseを返すことが確認できます。

関連する問題