10.7 Choosing between programmatic and declarative transaction management〜10.10 Further Resources

もう面倒だからまとめちゃうよ。

10.7 Choosing between programmatic and declarative transaction management

宣言的トランザクションとプログラムによるトランザクション。アプリの規模が大きくなったら宣言的にやらないと回らないよというだけの簡単なおはなし。しょーりゃく

10.8 Application server-specific integration

AppServとの連携について。
SpringのJtaTransactionManagerは、APサーバ毎に適切なJNDI名を自動的に解決する。詳細はJtaTransactionManagerのJavaDoc参照。JavaEE環境では普通はJtaTransactionManagerを選んどけば良い。分散トランザクション(だと思う…)などの追加機能についても特別な設定は不要。しかしトランザクションに関するさらなる追加機能を使用するために、SpringはWebSphereとWeblogicOC4J用のTransactionManaerを提供する。

普通は、上記のAPサーバごとのTransactionManaerを使う場合は を使うと良い。このタグを設定すると、自動的にAPサーバを判断し、最も適切なトランザクションマネージャを自動的に選択する。つまり、サーバ毎のTransactionManaerを明示的に定義しなくても良い。代わりにJtaTransactionManager を定義しておけば良い(・・だと思う)

以下APサーバごとの記述は以下みれ
http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/transaction.html#transaction-application-server-integration-websphere
http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/transaction.html#transaction-application-server-integration-weblogic
http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/transaction.html#transaction-application-server-integration-oc4j

10.9 Solutions to common problems

グローバルトランザクションを使う場合はJtaTransactionManager使ってくださいねという話。しょーりゃく

10.10 Further Resources

特に記載ない