您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
07-Spring的事务控制-基于xml的声明式事务控制-快速入门
发布时间:2025-01-20 23:00:18编辑:雪饮阅读()
-
接续上篇,接下来我们需要为beans开始标签新增tx名称空间及schemaLocation
这两个分别是:
xmlns:tx="http://www.springframework.org/schema/tx"
与
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
那么在我们的架构里面目标对象内部的方法就是切点,我们在Spring配置文件applicationContext.xml中进行接下来的一系列配置:
切点:
<!--目标对象内部的方法就是切点,我们这里目标对象最终封装于AccountServiceImpl的transfer方法里面执行的两个涉及到事务的语句-->
<bean id="accountService" class="sp22.service.impl.AccountServiceImpl">
<property name="accountDao" ref="accountDao"/>
</bean>
平台事务管理器:
<!--配置平台事务管理器-->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
增强:
<!--通知 事务的增强-->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
织入:
<!--配置事务的aop织入-->
<aop:config>
<aop:advisor advice-ref="txAdvice" pointcut="execution(* sp22.service.impl.*.*(..))"/>
</aop:config>
最终再次测试main方法,最终抛出异常如:
Exception in thread "main" java.lang.ArithmeticException: / by zero
并且数据库里面lucy和tom对应的money都没有增/减,则表示事务控制成功。
关键字词:Spring,事务,xml
相关文章
- 06-Spring的事务控制-基于xml的声明式事务控制-转账业
- 08-xml方式实现aop-快速入门(spring)
- 04-SpringMVC异常处理-自定义异常处理器
- 03-SpringMVC异常处理-简单异常处理器(defaultErrorVi
- 01-SpringMVC异常处理-异常处理的思路(异常何时抛出?何
- 09-SpringMVC拦截器-用户登录权限控制代码实现3
- 08-SpringMVC拦截器-用户登录权限控制代码实现2(exclu
- 07-SpringMVC拦截器-用户登录权限控制代码实现1
- 04-SpringMVC拦截器-快速入门详解(多拦截器与先进后出
- 03-SpringMVC拦截器-快速入门(解决System.out.println