前言:
在最近的实际工作当中,遇到一个业务场景,需要保证新老数据库的同步,在动态切换数据库当中,遇到了@Transactional和@DS的冲突问题,这里我写了一份个人的总结,从业务还原、原因剖析和如何解决等等一步步阐明。
目录
3.3、@DSTransactional注解代替@Transactional
4.5、临时添加一个temp数据库,进行插入操作,并抛出异常
4.7、使用@DSTransactional注解,在slave和temp之间抛出异常
4.8、使用@DSTransactional注解,在最后抛出异常
一、场景模拟
1、先导入pom.xml依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId