表題の件を調べていて、ほぼJava EEのJTAと同じかと思いきや、NESTEDというJTAには無いものがあったのでまとめました。 @Transactionalとは? メソッドに付加すると、メソッドの開始がトランザクションの開始、メソッドの終了がトランザクションの終了になります。 メソッド内で非チェック例外(RuntimeException及びそのサブクラス)が発生した場合はロールバックされます。 チェック例外の場合はロールバックされません。 具体的なコードで説明します。 実際にDBにアクセスするTxTestRepositoryクラス(以下「リポジトリ」)があり、それを呼び出しているTxTestService1(以下「サービス1」)とTxTestService2(以下「サービス2」)があります。 そして、サービス1はサービス2も呼び出しているとします。 @Repository public