Java Transaction API
JTA is a service-oriented API specification that allows applications to perform distributed transactions. Transactions access and update data on two or more networked computer resources. JTA is supposed as the service API used by application programmers to group operations into one or more logical transactions. The JTA specifies standard Java interfaces between a transaction manager and the parties involved in a distributed transaction system: the application, the application server, and the resource manager that controls access to the shared resources affected by the transactions. The most commonly used functionality by java transaction API is javax.transaction.UserTransaction, which provides services for explicit client control of transactions. A transaction describes a logical unit of work that either completely succeeds or produces no result at all. JTA mainly provides three kinds of services:
- Transactional operations in client applications
- In application servers transactional operations are performed on behalf of clients
- Java transaction manager coordinates multiple transaction-capable resource managers such as messaging systems and database servers