SpringBoot +DynamicDataSource切换多数据源的全过程

刚开始用一个数据源,但是上头要求要做多数据源切换的。看了框架有自带的可以切数据源但是数据源是固定在YML文件的;

固定多个数据源切换

1.由于我这个版本的自带DynamicDataSource包

我就不引入了。

各位看官缺包自行去maven上查Dynamic-DataSource第一个就是了。

2.在yml中配置两个数据源

SpringBoot +DynamicDataSource切换多数据源的全过程_第1张图片

3.启动时启动连接池的方法获取

在APPLICATION启动类中配置

SpringBoot +DynamicDataSource切换多数据源的全过程_第2张图片

4.载入各个连接池

将各个连接池载入dynamicDataSource类中其中dynamicDataSource(a,b)方法中的a代表默认连接池b是一个map里面存着连接池们,其中键值可以自己定义名称 我这里键值就是直接first,second了。

SpringBoot +DynamicDataSource切换多数据源的全过程_第3张图片

5.dynamicDataSource类中

SpringBoot +DynamicDataSource切换多数据源的全过程_第4张图片

6.在切面中执行切换操作

至于怎么进行添加切面就自行百度去了。由切面传进来的参数然后调用刚才说的那个setDataSource方法把串串传进去就可以了

SpringBoot +DynamicDataSource切换多数据源的全过程_第5张图片

然后固定切换就基本完成了。只要在调用的service前面加个@DataSource进入切面进行切换

SpringBoot +DynamicDataSource切换多数据源的全过程_第6张图片

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(SpringBoot +DynamicDataSource切换多数据源的全过程)