springboot配置两个数据源怎么实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot配置两个数据源怎么实现相关的知识,希望对你有一定的参考价值。

配置多个数据源信息,比如dataSource1,dataSource2,dataSource3等等。自定义一个动态数据源类,同时注入以上这些数据源以及相应的标志,一般用Map区分利用动态数据源类来拿到相应的数据源操作 参考技术A springboot实现多数据源有两种方案:
1、按照数据源分别把mapper和entity放到不同的package下,然后用两个数据源分别注册、扫描对应的package,独立的sessionfactoty
2、基于aop动态的切换的数据源
详情参照:https://www.94rg.com/article/8
希望能否解决你的问题,祝你生活愉快

springboot+mybaties实现分库分表

参考技术A 1.导包必须有的

2.修改数据源(applocation):2个

3.设置mapper配置文件:两个(主要)

另一份配置文件复制一份即可,不过有些参数需要改变,讲解:

@Primary 代表默认数据库,第二份需要去掉

@MapperScan @Bean 代表sql工程,dao层位置等,需要改掉不能和第一份一样吗,具体看你的applocation配置,最好方法名称也改掉。

@Value 配置的数据库信息,两份不同

4.创建文件:dao、mapper下都要配置两份,必须要和mapper配置文件中位置对应,否则无法生效。

中间碰到了一些问题大部分都可以考百度摆平,当然如果你严格然后我说的操作,那就不会有问题,其中解决时间最长的是在配置文件中有一行代码,因为是复制别人的所有不是很明白为什么那么操作,有知道可以在评论里说下,谢谢。

bug:数据库无法切换查询第二数据库时,debug中数据库值都已拿到,但是仍然查的是默认数据库,原因是在mapper配置文件中赋值了一个MybatisConfiguration,源代码如下:

以上是关于springboot配置两个数据源怎么实现的主要内容,如果未能解决你的问题,请参考以下文章

Dubbo中基于Springboot的配置注入实现

SpringBoot与Nacos整合

springboot加载properties和yml配置文件的顺序

springboot的Web开发进阶

SpringBoot运行时动态添加数据源

springboot 多数据源 怎么读取url