使用步骤:
步骤一、在spring配置文件中引入<tx:>命名空间
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
步骤二、具有@Transactional 注解的bean自动配置为声明式事务支持
<!-- 事务管理器配置, Hibernate单数据源事务 -->
<beanid="defaultTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<propertyname="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 使用annotation定义事务 -->
<tx:annotation-driventransaction-manager="defaultTransactionManager" proxy-target-class="true"/>
步骤三
* 测试
* @throws IOException
*/
@RequestMapping(value = "/test.action")
@Transactional(value="transactionManager2",propagation=Propagation.REQUIRED, rollbackFor=Exception.class)
public void Test(HttpServletRequest request,HttpServletResponse response){
TUsers obj = new TUsers();
obj = sqlServerNewDao.findUser("1458");
TUsers obj1 = new TUsers();
obj1 = sqlServerNewDao.findUser("1460");
obj.setUserName("陈柳媚asdf");//陈柳媚 郑炳宏
sqlServerNewDao.Update(obj);
obj1.setUserName("郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑郑");
sqlServerNewDao.Update(obj1);
}