Spring提供了许多内置事务管理器实现:
DataSourceTransactionManager:位于org.springframework.jdbc.datasource包中,数据源事务管理器,提供对单个javax.sql.DataSource事务管理,用于Spring JDBC抽象框架、iBATIS或MyBatis框架的事务管理;
Java代码
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean>
JdoTransactionManager:位于org.springframework.orm.jdo包中,提供对单个javax.jdo.PersistenceManagerFactory事务管理,用于集成JDO框架时的事务管理;
Java代码
<bean id="txManager" class="org.springframework.orm.jdo.JdoTransactionManager"> <property name="persistenceManagerFactory" ref="persistenceManagerFactory"/> </bean>
JpaTransactionManager:位于org.springframework.orm.jpa包中,提供对单个javax.persistence.EntityManagerFactory事务支持,用于集成JPA实现框架时的事务管理;
Java代码
<bean id="txManager" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory"/> </bean> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> …… <property name="jpaDialect" ref="jpaDialect"/> </bean> <bean id="jpaDialect" class="org.springframework.orm.jpa.vendor.HibernateJpaDialect"/>
HibernateTransactionManager:位于org.springframework.orm.hibernate3包中,提供对单个org.hibernate.SessionFactory事务支持,用于集成Hibernate框架时的事务管理;该事务管理器只支持Hibernate3+版本,且Spring3.0+版本只支持Hibernate 3.2+版本;
Java代码
<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean>
JtaTransactionManager:位于org.springframework.transaction.jta包中,提供对分布式事务管理的支持,并将事务管理委托给Java EE应用服务器事务管理器;
OC4JjtaTransactionManager:位于org.springframework.transaction.jta包中,Spring提供的对OC4J10.1.3+应用服务器事务管理器的适配器,此适配器用于对应用服务器提供的高级事务的支持;
WebSphereUowTransactionManager:位于org.springframework.transaction.jta包中,Spring提供的对WebSphere 6.0+应用服务器事务管理器的适配器,此适配器用于对应用服务器提供的高级事务的支持;
WebLogicJtaTransactionManager:位于org.springframework.transaction.jta包中,Spring提供的对WebLogic 8.1+应用服务器事务管理器的适配器,此适配器用于对应用服务器提供的高级事务的支持。
后续文章我会补充每一个TransactionManager的用法,还有我们研发过程中经常用到的事务管理有哪些,哪些方式,以及我们在做跨事务管理时的问题
来源:http://www.iteye.com/topic/1136891
关于spring的博客
相关推荐
本主题将深入探讨“Spring事务案例分析.zip”中的关键知识点,包括Spring事务管理及其在实际项目中的应用。 首先,我们来了解什么是Spring事务管理。在分布式系统或数据库操作中,事务管理是确保数据一致性和完整性...
这里,我们针对“spring问题总结.zip”文件中的主题进行详细的Spring框架知识探讨。 1. **依赖注入(Dependency Injection, DI)**:Spring的核心特性之一,通过DI,对象之间的依赖关系被反转,使得应用程序的组件...
4. **数据访问/集成**:Spring对JDBC、ORM框架(如Hibernate、MyBatis)以及NoSQL数据库的支持进一步增强,提供了事务管理功能,确保数据一致性。 5. **Spring Boot**:虽然Spring Boot不是4.3.9.RELEASE的一部分,...
对于Spring事务管理,我们通常有两种方式:编程式和声明式。编程式事务管理需要在代码中显式地调用begin、commit、rollback等事务控制方法,而声明式事务管理则是在配置文件或注解中声明事务规则,更加简洁且易于...
结合ThreadLocal和Spring事务管理,我们可以在多线程环境中实现高效且一致的业务处理。例如,Spring在处理每个HTTP请求时,会为每个请求分配一个单独的线程。我们可以通过ThreadLocal来保存请求相关的状态信息,而...
- **事务管理**:Spring的事务管理模块提供了一种声明式的事务管理机制,简化了事务的处理过程。 - **数据访问策略**:通过Spring可以灵活选择不同的数据访问策略,比如使用JDBC进行直接数据库操作或通过ORM工具进行...
总结来说,"spring3hibernate4注解式事务管理"是通过Spring的`@Transactional`注解实现事务边界,同时利用Hibernate 4的注解进行对象关系映射,从而简化了Java Web开发中的事务管理和持久层操作。这种组合方式提高了...
四、Spring事务管理 1. 编程式事务管理:通过PlatformTransactionManager接口进行事务管理,适用于手动控制事务的场景。 2. 声明式事务管理:基于AOP,通过@Transactional注解实现事务的自动管理,简化了事务处理...
总结来说,"mybaits-spring配置"涉及到的主要知识点包括:Spring的DataSource配置、SqlSessionFactory的创建、Mapper接口的扫描、事务管理器的设置以及AOP事务配置。这些配置使得MyBatis能够无缝融入到Spring环境中...
5. **数据访问集成**:Spring对JDBC、ORM框架(如Hibernate、MyBatis)的支持,以及事务管理。 6. **Spring Boot**:现代Spring应用的快速启动框架,其自动配置特性及Starter POMs的使用。 7. **Spring Cloud**:...
通过查看这些代码,我们可以学习如何在没有web.xml的情况下,使用注解来配置Spring MVC、数据库连接、事务管理等。 5. **工具使用**:创建和运行这样的项目,开发者通常会用到Maven或Gradle作为构建工具,它们负责...
总结,Spring+JDBC组合开发提供了强大的数据库操作工具和事务管理机制,使得我们在Java应用中可以更加专注于业务逻辑,而不是底层的数据库操作。通过理解并熟练掌握这些知识点,你将能够构建出高效、稳定且易于维护...
总结来说,"Axis整合Spring"是Java Web服务开发中的一个重要主题,它结合了两个强大框架的优势,提供了一种灵活、可扩展且易于维护的Web服务开发方式。通过理解这两者的集成原理和实践方法,开发者可以构建出更高效...
- **事务管理**:Spring提供了声明式事务管理和编程式事务管理两种方式。 ### 4. Web开发 - **MVC框架**:Spring MVC是Spring框架中的一个模块,提供了构建Web应用所需的模型-视图-控制器架构。 - **RESTful服务**...
4. 事务管理:Spring的声明式事务管理简化了事务边界处理,使得事务管理更加透明。 5. 模块化设计:Spring由多个模块组成,如Core Container、Data Access/Integration、Web等,可根据项目需求选择相应的模块。 四...
**配置TransactionManager**:创建PlatformTransactionManager Bean,MyBatis与Spring整合时通常使用SqlSessionTemplate或者MyBatis的SqlSessionInterceptor配合Spring的TransactionProxyFactoryBean来实现事务管理...
3. **Spring事务管理**: - **事务管理的重要性**:在多步骤数据库操作中,事务是保证数据一致性的关键,它可以确保操作的原子性、一致性、隔离性和持久性(ACID特性)。 - **Spring事务支持**:Spring提供了编程...
- 事务管理:介绍Spring如何处理数据库事务,包括编程式和声明式事务管理。 - AOP实战:演示如何定义和使用切面,以及切点表达式的编写。 - 集成其他技术:如整合Hibernate或MyBatis进行持久层操作,或者与其他框架...
2. **事务管理**:利用Spring的声明式事务管理,处理多表操作时的事务一致性问题。 3. **AOP实践**:编写切面来实现日志记录或性能监控。 4. **集成其他技术**:如MyBatis、Hibernate等持久层框架,或Struts、JSF...