十一、总结一下今天在SpringAOP中遇到的一个坑,事务控制一直失败,自己感觉代码没错的感觉,往底层看,很明了了

今天晚上找bug找了很久,是一个关于QueryRunner的

在这里插入图片描述
我找了很久都无法进行事务控制,后来我想到了数据源会产生不同的连接,从query方法点进去可以看到
在这里插入图片描述
继续点开在这里插入图片描述
发现没有,每次都会产生一个新的连接
如果说是传入了一个连接,我们让这个连接不变,事务管理自然也可以得到实现
在这里插入图片描述
我们直接在传入的时候给他一个不变连接,每次用的就是一个连接
那怎么获得同一个连接呢?
ThreadLocal<>便能控制得到的连接,当前线程中有连接就直接取,不需要去创建,见下面代码
在这里插入图片描述
事务控制完美解决!over!

猜你喜欢

转载自blog.csdn.net/lp20171401131/article/details/106434584