Java Transaction API(Java事务API) (JTA)Java Transaction API(Application Programming Interface)
什么是JTA Transaction?它有怎样的特点呢?JTA Transaction是指由J2EE Transaction manager去管理的事务。其最大的特点是调用UserTransaction接口的begin,commit和rollback方法来完成事务范围的界定,事务的提交和回滚。JTA Transaction可以实现同一事务对应不同的数据库,但是它仍然无法实现事务的嵌套。
分布式事务的规范由OMG的OTS所描述。
JTA是只是一组java接口用于描述,J2ee框架中事务管理器与应用程序,资源管理器,以及应用服务器之间的事务通讯。
它主要包括高层接口即面向应用程序的接口;XAResource接口即面向资源的接口;以及事务管理器的接口。值得注意的是JTA只提供了接口,没有具体的实现。
JTS是服务OTS的JTA的实现。简单的说JTS实现了JTA接口,并且符合OTS的规范。
资源管理器只要其提供给事务管理器的接口符合XA接口规范,就可以被事务管理器处理。
所以,JTA可以处理任何提供符合XA接口的资源。包括:数据库,JMS,商业对象等等
“Java 事务 API”(JTA)启用两阶段提交功能。当配置 WebSphere Application Server 以访问数据库时,可选择具有 JTA 能力的驱动程序。如果需要两阶段提交功能,则必须使用启用 JTA 的驱动程序。
只要您在事务中调用了多个数据库连接,就需要 JTA。只要您在事务中调用了多个数据库服务器,就需要两阶段提交。这些连接可以是相同的物理数据库服务器或多个数据库服务器。例如:
* 实体企业 Bean Entity1 在应用程序服务器 AppServer1 中部署。
* 实体企业 Bean Entity2 在应用程序服务器 AppServer1 中部署。
* 会话企业 Bean Session1 在应用程序服务器 AppServer1 中部署。
如果 Session1 对同一事务内的 Entity1 和 Entity2 调用了方法而这两个企业 Bean 正在使用不同的物理数据库连接,则必须对 Entity1 和 Entity2 使用的数据源启用 JTA。当从相同的数据源对象获取那些连接时,这也是成立的。这需要具有 JTA 能力的驱动程序以提交事务。
当事务涉及到多个进程时,JTA 也是必需的。例如,一个事务可能会涉及在多个应用程序服务器中部署的企业 Bean。
* 实体企业 Bean Entity1 在应用程序服务器 AppServer1 中部署。
* 实体企业 Bean Entity2 在应用程序服务器 AppServer2 中部署。
* 会话企业 Bean Session1 在应用程序服务器 AppServer1 中部署。
如果 Session1 对同一事务(此事务构成一个分布式事务)内的 Entity1 和 Entity2 调用了方法,则必须对 Entity1 和 Entity2 使用的数据源启用 JTA。
性能实现JTA 启用的连接与非 JTA 启用的连接执行情况不同。基于此原因,如果您的应用程序不需要 JTA,则最好使用非 JTA 启用的驱动程序。
其它信息有关 WebSphere Application Server 如何支持 JTA 的信息,参见 WebSphere Application Server 和 DB2 UDB iSeries 版的事务处理及其子主题。
分享到:
相关推荐
4. **JTA(Java Transaction API)**:JTA提供了跨多个资源的事务管理,确保在分布式环境中的数据一致性。 5. **JPA(Java Persistence API)**:JPA是Java平台上的ORM(Object-Relational Mapping)标准,简化了与...
【Hibernate原理与实现简介】 Hibernate 是一款流行的Java平台上的对象关系映射(ORM)框架,它的主要作用是简化数据库操作,将复杂的SQL语句和Java对象之间的转换工作自动化,从而提高开发效率。Hibernate通过将...
- 包括EJB、JMS、JTA、JPA、JSF等技术。 #### 3. Application Server的功能和优点 - 提供了容器服务、事务管理等功能。 - 优点包括高可用性、易于扩展等。 #### 4. 连接池的优点和原理 - **优点**:减少数据库...
- **简介**:JTA定义了一套标准的API,用于访问事务管理器,实现跨资源的事务处理。 - **特点**: - 一致性:保证事务的一致性,即使在出现故障的情况下也能恢复到一致的状态。 - 事务隔离:提供不同级别的事务...
Maven简介 Maven安装 Maven的pom.xml dependencies dependency 变量定义 编译插件 Spring项目的搭建 Spring Tool Suite https://spring.io/tools/sts/all IntelliJ IDEA ...
这包括Servlet、JSP(JavaServer Pages)、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JTA(Java Transaction API)等。了解这些组件的工作原理以及它们如何协同工作是至关重要的。 1. **Servlet...
#### 一、Hibernate简介与安装配置 **1.1 Hibernate概念** Hibernate是一种开源的对象关系映射(Object Relational Mapping, ORM)框架,用于简化Java应用程序与数据库之间的交互。通过ORM技术,Hibernate能够将...
1. **简介** Spring不仅是一个Web框架,它还是一个全面的应用框架,提供了诸如Bean配置、面向切面编程(AOP)、JDBC抽象层、事务管理等多方面的支持。与Struts和Webwork等框架相比,Spring更加灵活,可以在不需要...
J2EE的核心技术包括JNDI、EJB、JSP、Servlets、JMS、RMI-IIOP、JTA、JDBC、XML、JCA、JPA、JSF和CDI,每一种技术都在不同的层面解决了企业应用开发中的关键问题。 ### JNDI:Java Naming and Directory Interface ...
#### 一、OpenAdaptor简介 OpenAdaptor是一款功能强大的Java软件工具包,专为企业应用集成(EAI)设计。它最初由一家大型金融组织开发,旨在帮助其应用程序与消息中间件实现无缝对接。作为一套全面的框架与组件集合...
4. **事务处理**:Camel提供了事务处理器,支持JTA(Java Transaction API),确保在分布式环境中的一致性和可靠性。 5. **错误处理和恢复**:Camel提供了丰富的错误处理策略,如重试、死信队列和故障转移,确保在...
Hibernate核心思想与接口简介 Hibernate 是一个采用 ORM 机制的开源框架,核心思想是将表与表之间的操作,映射成对象和对象之间的操作,这样简化了持久层的代码,减轻了程序员的负担。ORM 是一种为了解决面向对象与...
1. **Hibernate简介**: Hibernate作为ORM框架,解决了Java应用程序与关系型数据库之间的不匹配问题。通过提供一种中间层,它使得开发者可以使用Java对象进行数据库操作,而不是直接编写SQL语句。Hibernate支持使用...
10.1.3在hibernate中使用jta事务 210 10.1.4并发控制 211 10.2hibernate缓存 213 10.2.1缓存的工作原理 213 10.2.2应用一级缓存 214 10.2.3应用二级缓存 214 10.2.4应用第三方缓存 216 10.3项目实战——借还...
### J2EE API简介 J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems(已被Oracle收购)推出的一套企业级Java平台标准,主要用于开发可移植、健壮、可伸缩、模块化和安全的服务器应用程序。随着技术...
7. **Java Transaction API (JTA)**:JTA提供了跨多个资源的事务管理,确保在分布式环境中的一致性和原子性。 8. **Java Naming and Directory Interface (JNDI)**:JNDI提供了一种查找和管理网络资源的机制,如...
此外,它还提供了一致的事务管理模型,无论是JTA还是JDBC事务。Spring的AOP框架允许在POJO上实现声明式事务管理和其他企业服务。最后,Spring MVC框架为Web应用提供了强大的后端支持。 2. **WebWork** - **简介**...