前言:
此刻各位老铁们对“springboot多数据源动态切换”大概比较注意,朋友们都想要学习一些“springboot多数据源动态切换”的相关文章。那么小编同时在网络上汇集了一些对于“springboot多数据源动态切换””的相关内容,希望咱们能喜欢,同学们一起来学习一下吧!SpringBoot多数据源切换,先上配置文件:
1.主要pom依赖:
2.application.yml
3.configuration
4.数据源持有类
controller:
入口类:
说明一下实现思路:
springboot有提供AbstractRoutingDataSource#determineCurrentLookupKey抽象方法去指定数据源,我们要做的就是实现切换数据源的逻辑;通过AOP在调用数据库之前切换数据源;
本来在切面内做了一个缓存,记录上一次使用的数据源,如果这一次使用相同的就不用切换了,但是发现初始化数据连接才是消耗大的,后面切换数据源其实就是去指定用哪个数据库连接而已,不再消耗资源了;
下面的代码显示了切换数据源时只是通过key去拿对应的dataSource,而相关的dataSource在第一次调用时就初始化一次就可以了;
标签: #springboot多数据源动态切换