Spring Aop 事务问题

今天在学习spring中碰到了一个问题,在使用spring Aop进行简易转账事物操作的时候,如果业务流程正常则结果没有问题,而如果在代码中书写一段异常代码按理来说是会事物回滚,而我的代码执行结果是汇款方汇出了钱,但是收款方却没有收到,也就是事务没有回滚,这个问题困扰了我一下午,终于在晚上的时候找到了原因,下面给大家分享一下代码.

1.dao层接口及实现类.

在这里插入图片描述
在这里插入图片描述

2.service层接口及实现类在这里插入图片描述

在这里插入图片描述

3.ApplicationContext.xml

在这里插入图片描述
在这里插入图片描述

4.测试代码

在这里插入图片描述

5.未进行测试前数据库内容

在这里插入图片描述
测试后数据库内容:
在这里插入图片描述
从图中我们可以看到转账业务成功执行.而现在我们将service实现类中的int i = 1/0;取消注释的话就会出现问题在这里插入图片描述
大家可以看到汇款方汇出了钱,而收款方没有收到

6.最终我找到问题的所在,在测试代码中的 xmlPath变量applicationContext.xml前面加上"/",问题解决.

修改后的代码:
在这里插入图片描述
我们再查看一下数据库:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Bnsdmm_lk/article/details/82873826