1、Mybatis-Spring配置2、测试代码在上图代码151行运行完后,在154行跑出了RuntimeException,但是数据依然提交到了MySQL,没有回滚3、说明:mysql的autocommit功能已经关闭4、疑问:1)为什么上述测试抛出了一场数据没有回滚?2)我把切面的切点方法名称如method="add"改成method="badd",数据还是会提交,
而且不回滚,按理说,切面没切到是没有事物的,即使junit跑的过程中数据添加成功了,跑完后数据应该还是没提交的状态。
因为不用切面Mybatis只能单独用SqlSession的事物,前提是需要自己声明。5、日志:1)切面,method="add"日志:异常:2)不用切面,method="badd",可以看到下图日志中并没有commit日志
4 回答
陪伴而非守候
TA贡献1757条经验 获得超8个赞
第151行代码:ResponseVo = iUserService.addOneUser(user);
当Runtime Exception
在iUserService#addOneUser
方法里抛出,才会触发事务回滚,由于这里没有贴出这个方法内的代码,所以也不好判断。
添加回答
举报
0/150
提交
取消