第5章 JDBC およびトランザクション

5.1. トランザクションJDBC ドライバの利用

JBossJTAは、JDBC 2.0 APIを使いデータベースにアクセスするローカルおよび拡散トランザクショナルアプリケーションに対応しています。JDBC 2.0 はトランザクションの二相コミットに対応しており、XA X/Open standard に似ています。JDBC 2.0 はcom.arjuna.ats.jdbc パッケージにあります。
JDBC 2.0は、エンタープライズデータベースの中でも大半は現在のバージョンで認定を受けています。対応している構成については、http://www.jboss.com/products/platforms/application/supportedconfigurations/を参照してください。

5.1.1. トランザクションの管理

JBossJTAは、JDBC 接続で実行された作業と特定のトランザクションを関連付ける必要があります。そのため、アプリケーションは暗黙的なトランザクションの伝播と間接的なトランザクション管理を使う必要があります。JBossJTA はJDBC 接続ごとに、呼出しスレッドの現在のトランザクションコンテキストを決定できなければなりません。

5.1.2. 制限

JDBC 2.0 はネスト化されたトランザクションには対応していません。サブトランザクション内でJDBC 接続を利用しようとすると、JBossJTA は例外をスローし、その接続を使った作業は実行されなくなります。