Spring4でXMLを書かずにアノテーションベースのトランザクションを有効にする

こんにちは、鈴木です。

 

Spring Framework でトランザクションを使うには、、、

  1. 設定ファイルに <tx:annotation-driven transaction-manager="txManager"/> と書く。
  2. 設定ファイルで PlatformTransactionManager の実装クラスをコンテナに登録する。
  3. クラスやメソッドに @Transactional アノテーションを付ける。

というやり方がお決まりだと思います。

Web 上で検索しても上記方法を紹介しているところが多いのですが、せっかくなのでアノテーションだけで完結したいです。

調べたところ Spring Framework のドキュメントに記載がありました。

11.5.1 Understanding the Spring Framework’s declarative transaction implementation

ここを読むと、

  1. @Configuration を付けたクラスに @EnableTransactionManagement を付ける。
  2. PlatformTransactionManager の実装クラスをコンテナに登録する。
  3. クラスやメソッドに @Transactional アノテーションを付ける。

という手順でできるそうです。

コードにすると以下のようになります。

全て XML(設定ファイル)レスで開発できるのでしょうか。。

Spring4 はもっと調べていきたいと思います。

 

Comments are closed, but you can leave a trackback: Trackback URL.