关于事务的控制,有一下几点说明:
目前说的事务是基于DB的事务 既然如此,跨DB的事务不能支持的。因为相当于一个操作包含了两个事务。这种场景很明显是分布式事务的场景
1、采用申明或者注解实现事务控制时时,因为开启了事务控制,所以如果是两个不同的数据源Dao,
根据spring的事务传播特性,第二个事务开启将使用已有的事务(即将采用第一个数据源的数据库连接)进行事务操作,
所以此时事务控制是失效的(即使切面执行了数据源切换)。
结论就是跨数据库的事务是无法通过spring的数据库控制实现的!!!请切记。
2、同一个数据源的事务控制和普通的数据源控制是一致的,没有什么区别。
微信扫描二维码,关注我的公众号