基于AOP的事务管理

1
2
3
4
5
6
7
8
9
10
11
12
/*
*作者:呆萌老师
*☑csdn认证讲师
*☑51cto高级讲师
*☑腾讯课堂认证讲师
*☑网易云课堂认证讲师
*☑华为开发者学堂认证讲师
*☑爱奇艺千人名师计划成员
*在这里给大家分享技术、知识和生活
*各种干货,记得关注哦!
*vx:it_daimeng
*/

  

基于aop的事务管理
1.修改配置文件 ,加入以下配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!-- 事务管理器 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource" />
</bean>
 
<tx:advice id="txAdvice" transaction-manager="txManager">
    <tx:attributes>
        <!-- 为连接点指定事务属性 -->
        <tx:method name="transfer" isolation="DEFAULT" propagation="REQUIRED" rollback-for="MyException"/>
    </tx:attributes>
</tx:advice>
 
<aop:config>
    <!-- 切入点配置 -->
    <aop:pointcut expression="execution(* *..service.*.*(..))" id="point"/>
    <aop:advisor advice-ref="txAdvice" pointcut-ref="point"/>
</aop:config>

  

2.service层的事务注解去掉

3.测试

1
2
3
4
5
6
7
8
9
10
11
12
13
@Test
public void fun()
{
    ClassPathXmlApplicationContext classPathXmlApplicationContext=new ClassPathXmlApplicationContext("/ApplicationContext.xml");
 
    ICardInfoService cardInfoService= classPathXmlApplicationContext.getBean("cardInfoService",ICardInfoService.class);
 
    try {
        cardInfoService.transfer(1,2,250.0);
    } catch (MyException e) {
        e.printStackTrace();
    }
}

  

posted @   呆萌老师  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示