1.首先,配置事务代理
<!-- Transaction manager for a single Hibernate SessionFactory (alternative to JTA) -->
<bean id="hibernateTransactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager"
autowire="byName" />
<!-- Transactional proxy for the services -->
<bean id="baseTxProxy" lazy-init="true"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="hibernateTransactionManager" />
</property>
<property name="transactionAttributes">
<!-- 此处对需要使用事务管理的方法进行配置 -->
<props>
<prop key="updateFrequency">PROPAGATION_REQUIRED</prop>
<prop key="saveStaff">PROPAGATION_REQUIRED</prop>
<prop key="saveSchenulingDetailed">PROPAGATION_REQUIRED</prop>
<prop key="delSchenuling">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
2.对需要事务管理的业务逻辑类配置事务代理
<!-- 班次管理 -->
<bean id="frequencyDAO" class="com.order.cc.fwfm.frequency.dao.FrequencyDAO" autowire="byName"/>
<bean id="wfmFrequencyEntity" class="com.order.cc.fwfm.frequency.entity.WfmFrequencyEntity" autowire="byName" />
<!--需要被事务管理的类-->
<bean id="frequencyService" class="com.order.cc.fwfm.frequency.svc.FrequencyService" autowire="byName" />
<!--配置业务逻辑类的事务代理-->
<bean id="frequencyServiceTrans" parent="baseTxProxy">
<property name="target">
<ref local="frequencyService" />
</property>
</bean>
<!--让原来Action中的业务逻辑类指向事务代理类-->
<bean name="/frequencyAction" class="com.order.cc.fwfm.frequency.action.FrequencyAction" autowire="byName" >
<property name="frequencyService" ref="frequencyServiceTrans" />
</bean>
分享到:
相关推荐
在Spring+MyBatis的声明式事务中,这些特性由Spring的事务管理器保证。例如,如果在事务过程中发生异常,Spring会自动回滚事务以保持数据的一致性。 7. **事务的隔离级别** Spring支持四种事务隔离级别:READ_...
Spring 中的事务处理可以分为两种方式:声明式事务处理和编程式事务处理。声明式事务处理通过 AOP 的实现,把事务管理代码作为方面封装到业务代码中,使得事务管理代码和业务代码解藕。这使得事务管理变得更加灵活...
### 标题解读:Spring声明式事务配置 Spring框架提供了两种主要类型的事务管理方式:编程式事务管理和声明式事务管理。声明式事务管理通过XML配置或注解的形式定义事务边界,使得业务逻辑与事务控制分离。 ### ...
在Spring框架中,声明式事务管理是实现事务处理...在博文"Spring使用XML配置声明式事务"中,作者详细讲解了每个步骤,并可能通过示例代码展示了如何实际应用这些配置,帮助读者更好地理解和掌握Spring声明式事务管理。
文件名为`Spring声明式事务处理-1.mht`到`Spring声明式事务处理-5.mht`,通过阅读这些文件,你将能够深入理解Spring声明式事务处理的各个方面,包括配置、使用场景、最佳实践以及常见问题的解决方法。
本示例“spring+ibatis声明式事务Demo”将探讨如何在Spring与iBatis集成环境中使用声明式事务管理。声明式事务管理允许开发者通过配置来控制事务,无需在代码中显式处理事务开始、提交和回滚。 **Spring框架** 是一...
在这个"spring声明式事务处理demo"中,我们将探讨如何在MyEclipse环境下实现这一功能。 首先,我们要理解Spring事务管理的两种主要方式:编程式事务管理和声明式事务管理。编程式事务管理通常通过AOP(面向切面编程...
本篇将详细介绍如何在Spring 2.5版本中整合iBATIS 2.3,并利用Spring的声明式事务管理,以提升应用程序的稳定性和可维护性。 首先,我们需要了解Spring 2.5和iBATIS 2.3的基本概念。Spring 2.5是Spring框架的一个...
本主题将深入探讨Hibernate的编程式事务管理和Spring AOP的声明式事务管理,以及两者如何在实际项目中集成使用。 **Hibernate编程式事务管理** Hibernate作为流行的ORM(对象关系映射)框架,提供了对JDBC事务的...
spring声明式事务实例 可复制修改使用。。。。。。。。。。
以下是关于Spring声明式事务配置管理的详细说明: 1. **事务管理器配置**: 在`/WEB-INF/applicationContext.xml`文件中,我们需要定义一个事务管理器Bean。通常,对于Hibernate,我们会使用`...
在Spring框架中,声明式事务管理是通过AOP(面向切面编程)实现的,它为开发者提供了方便、高效且灵活的事务管理机制。本文将深入探讨如何利用Spring的声明式事务来处理业务操作中的数据一致性问题,以及相关源码...
这是Spring声明式事务的核心注解,可以用于类或方法级别。当应用于类时,该类的所有公共方法都将包含在事务中。若应用于方法,只有该方法及其子方法才会被事务管理。注解中的属性包括`propagation`(事务传播行为)...
在"spring声明式事务管理配置方式"中,主要涉及到以下几个关键知识点: 1. **Spring事务管理器(Transaction Manager)**: - Spring支持多种事务管理器,如DataSourceTransactionManager(用于JDBC事务)和...
5. 开启声明式事务:在Service层的方法上使用`@Transactional`注解,表明该方法需要在事务中执行。 6. 实际业务逻辑:在Service层的方法内部,通过SqlSessionTemplate执行SQL语句,进行数据操作。 7. 提交或回滚事务...
1. **基于XML的声明式事务管理**: 在Spring的配置文件中,我们可以通过`<tx:advice>`、`<aop:config>`等元素定义事务的边界,指定哪些方法需要在事务中运行。 2. **基于注解的声明式事务管理**: 使用@Transactional...