Java Transaction API
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/09/26 04:09 UTC 版)
![]() |
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。(2021年6月)
|
Jakarta Transactionsは、Eclipse Foundationが開発している、XAリソース間の分散トランザクション処理を扱うJavaのAPIで、Jakarta EE Platformに含まれている。Java 8までは、Java Platform, Enterprise Editionの一部で、Java Transaction API (JTA) という名称だった。
JTAは以下を提供する:
- トランザクション境界の設定
- X/Open XA APIを使ったトランザクション処理
沿革
- 2002年11月6日 - Java Transaction API 1.0[1]
- 2007年2月14日 - Java Transaction API 1.1
- 2013年6月17日 - Java Transaction API 1.2
- 2018年4月2日 - Java Transaction API 1.3
- 2019年8月2日 - Jakarta Transactions 1.3。Jakarta EE 8 に含まれる。[2]
- 2020年10月8日 - Jakarta Transactions 2.0。Jakarta EE 9, 10, 11 に含まれる。パッケージ名が javax.transaction から jakarta.transaction に変更になった。[3]
X/Open XAアーキテクチャ
X/Open XAアーキテクチャでは、トランザクションマネージャ(あるいはTPモニター)がデータベースなどの複数リソース間のトランザクションを調整する。各リソースにはマネージャが対応している。リソースマネージャは一般にリソースを操作するための独自APIを持ち、例えば関係データベースではJDBC APIが使われる。さらに、TPモニターは複数のリソースマネージャ間の分散トランザクションの調整を行う。そして、アプリケーションはTPモニターと通信し、TPモニターにトランザクション群の開始、コミット、ロールバックを指示する。また、アプリケーションは個々のリソースマネージャとも独自APIで通信し、リソースの更新などを行う。
JTAの実装
JTA APIは2つのJavaパッケージにあるクラス群で構成される:
JTAはX/Open XAアーキテクチャに基づいているが、トランザクション境界を設定するために2つのAPIを定義している。JTAでは EJBサーバのようなアプリケーションサーバとその上のアプリケーションコンポーネントを区別する。アプリケーションサーバがトランザクションの開始/コミット/ロールバックを指示するためのインタフェースとしてjavax.transaction.TransactionManager
がある。また、サーブレットやEJBがトランザクションを管理するためのインタフェースとして javax.transaction.UserTransaction
がある。右の図は X/Open XAインタフェースとして使われる JTA のクラスを示している。
JTAアーキテクチャでは、各リソースマネージャ上に javax.transaction.xa.XAResource
インタフェースを実装してTPモニターから制御できるようにする必要がある。前述したように各リソースマネージャには以下のような固有のAPIがある。
Java Transaction Service
Java Transaction Service (JTS) とは、JTAを使ったトランザクションマネージャの実装である。CORBAアーキテクチャに基づいており、複数のJTS間のトランザクションの伝播にはIIOPを使う。Jakarta EEアプリケーションサーバはJTSの実装が必須とされている。
脚注
- ^ “The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 907”. jcp.org. 2025年9月25日閲覧。
- ^ “Jakarta Transactions 1.3 | Jakarta EE | The Eclipse Foundation”. Jakarta® EE: The New Home of Cloud Native Java. 2025年9月25日閲覧。
- ^ “Jakarta Transactions 2.0 | Jakarta EE | The Eclipse Foundation”. Jakarta® EE: The New Home of Cloud Native Java. 2025年9月25日閲覧。
外部リンク
固有名詞の分類
Weblioに収録されているすべての辞書からJava Transaction APIを検索する場合は、下記のリンクをクリックしてください。

- Java Transaction APIのページへのリンク