第一种:Client Owner Transaction Manager(客户端管理事务,比如物理上分开的Web层、SWT客户端),使用这种事务策略必需注意:
- 如果client使用EJB,必需使用编程式(programmatic)的事务管理,如果使用spring,可以使用宣告式的事务管理;
- 如果服务端对象是远程对象,比如web层和业务逻辑层物理分开,那么事务必须有能力传播到远程对象,比如RMI协议(Spring支持的大部分远程访问协议都不支持事务传播)
- Server 端的业务对象必需使用宣告式的事务管理模式,不能使用编程式的事务管理模式,因为一个编程式的事务不能传播另外一个编程式的事务(客户端很可能使用编程式的事务管理)
- 维护ACID属性的服务端不允许启动、提交和回滚事务
- 由客户端启动的事务将传播给任何本地的POJO调用;
- 服务端的业务对象必需使用托管式的事务(Mandatory);
- 客户端所有Query类型的Method都不应该使用事务,但server端的业务对象应该配置Support类型的事务支持;
- DAO层的代码不应该显示使用任何和事务或事务回滚相关的逻辑;
第二种:Domain Service Owner Transaction Design Strategy:服务端管理事务,即每一个客户端对服务端的调用都作为一个单独的事务,这种模式也是我们大多数情况采用的,也是推荐的模式;
第三种:Server Delegate Owner Transaction Design Strategy:服务端委托事务模型,这种其实是第二种的一种特例,也就是使用Command或delegate模式,把客户端的调用逻辑委派给服务端的一个Processor,并再服务端进行事务边界的管理。
在设计时,要尽量避免使用在客户端管理事务的边界,应该采用第二种或第三种。
分享到:
相关推荐
### Java Transaction Design Strategies知识点概述 #### 一、引言 《Java Transaction Design Strategies》是一本专注于Java事务设计的专业书籍,由Mark Richards编写。本书详细介绍了Java应用程序中的事务处理...
Java Transaction Design Strategies PDF
JTA(Java Transaction API)允许应用程序执行分布式事务处理--在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序的JTA支持极大地增强了数据访问能力。本文的目的是要提供一个关于的Java事务处理API(JTA)...
JAVA网络编程资料(4)-相关API—Java Transaction API概述(1).chm
这份"spring-note spring 读书笔记"深入探讨了Spring的核心概念以及如何与其他流行技术如JDBC、Hibernate、Struts和事务管理进行集成。 1. **Spring依赖注入(IOC)**: Spring的IOC容器是其核心,负责创建对象并...
Java Transaction API (JTA)是Java平台上的一个关键组件,主要负责处理分布式事务管理。作为Java Enterprise Edition (Java EE)的一部分,JTA定义了在分布式系统中如何协调多个资源(如数据库、消息队列等)的事务...
除此之外,Java EE的网络通信、安全、JMS(Java Message Service)、JTA(Java Transaction API)等都是开发者需要掌握的重要知识点。网络通信涉及到HTTP、HTTPS等协议,以及WebSocket等实时通信技术;安全性包括...
JTA(Java Transaction API)是Java平台上的标准事务接口,允许应用程序在不同的资源管理器之间进行协调的事务处理。而JTS(Java Transaction Service)是J2EE中用于实现分布式事务处理的规范,基于CORBA的OTS标准,...
Java Transaction API(JTA)是Java平台上的标准接口,用于管理事务处理,它为分布式环境提供了强大的事务控制能力。在企业级应用开发中,尤其是在银行、金融和其他对数据一致性要求极高的领域,JTA扮演着至关重要的...
7. **JTA(Java Transaction API)** - JTA定义了分布式事务处理的标准,确保在多组件环境中的一致性和可靠性。 8. **JMS(Java Message Service)** - JMS允许应用之间通过消息进行通信,支持点对点和发布/订阅...
【Java相关课程系列笔记之十四Hibernate学习笔记】 Hibernate是一个开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序对数据库的操作。本笔记将详细阐述Hibernate的核心概念、使用方法和特性。 一、...
Java Transaction API (JTA) 和Java Transaction Service (JTS) 提供了分布式事务管理的框架,允许跨多个资源(如数据库和消息队列)的事务操作。 6. 高可用性和容错 为了确保系统的稳定性,Java提供了负载均衡...
**Java JDK 6.0 学习笔记** Java JDK(Java Development Kit)是Java编程语言的核心组件,包含Java运行环境、编译器、类库以及各种工具,是开发者进行Java程序开发的基础。Java JDK 6.0是Oracle公司发布的一个重要...
的Java Transaction API (JTA) #### 概述 Sun Microsystems Inc. 的Java Transaction API (JTA) 是一个重要的规范文档,它定义了事务管理器与分布式事务系统中的各方(应用程序、资源管理器以及应用服务器)之间...
### JAVA高级软件工程师培训笔记知识点概述 #### 一、Hibernate数据持久化组件 ##### 对象持久化(Object Persistence) - **定义**: 对象持久化是指将内存中的数据对象保存到持久化的存储介质上(如硬盘、数据库等...
jta.jar...............................
"达内java笔记,精挑细选(达内助教整理)"是一个专门为学习Java和J2EE技术而准备的学习资料集,包含了助教精心筛选和整理的知识要点。这份笔记将帮助初学者或有经验的开发者快速掌握J2EE的核心概念和技术。 首先,...
5. **JTA(Java Transaction API)**:JTA定义了事务管理的标准接口,使得应用可以进行分布式事务处理。在Java Web环境中,容器(如Tomcat或WebLogic)通常会提供对JTA的支持,确保多操作的原子性、一致性、隔离性和...
它包含了Servlet、JSP(JavaServer Pages)、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JTA(Java Transaction API)等技术,可以实现Web服务、事务处理、邮件服务、数据访问等功能。 在“JavaEE...