DS注解切换数据源失败,实战中常见哪些原因?
- 内容介绍
- 文章标签
- 相关推荐
本文共计913个文字,预计阅读时间需要4分钟。
目录+项目场景:+问题排查过程+第一个问题,数据源未加载+第二个问题,@DS注释切换数据源无效+总结+项目场景:+一位好友在陈年老代码中想添加mybatis-plus和bomidou的多数据源来简化开发
目录
- 项目场景:
- 问题排查过程
- 第一个问题,数据源没有载入
- 第二个问题,@DS注解切换数据源无效
- 总结
项目场景:
一位好友在陈年老代码中想要加入mybatis-plus和boumidou的多数据源来轻松实现crud,但是发现@DS无法成功切换数据源,一直都是访问的主库,于是我开始了漫长的啃源码找原因。
以下内容包含两个问题1:配置的数据库没有正常被dynamic框架载入,2:@DS注解切换数据源无效
问题排查过程
第一个问题,数据源没有载入
根据启动日志里druid打印的信息来看,只载入了一个数据库,并没有把yml配置信息中的两个数据库都加载,YML配置如下。
从源码来看,数据源的配置读取是在AbstractDataSourceProvider类中。
他的调用是在子类YmlDynamicDataSourceProvider中。
本文共计913个文字,预计阅读时间需要4分钟。
目录+项目场景:+问题排查过程+第一个问题,数据源未加载+第二个问题,@DS注释切换数据源无效+总结+项目场景:+一位好友在陈年老代码中想添加mybatis-plus和bomidou的多数据源来简化开发
目录
- 项目场景:
- 问题排查过程
- 第一个问题,数据源没有载入
- 第二个问题,@DS注解切换数据源无效
- 总结
项目场景:
一位好友在陈年老代码中想要加入mybatis-plus和boumidou的多数据源来轻松实现crud,但是发现@DS无法成功切换数据源,一直都是访问的主库,于是我开始了漫长的啃源码找原因。
以下内容包含两个问题1:配置的数据库没有正常被dynamic框架载入,2:@DS注解切换数据源无效
问题排查过程
第一个问题,数据源没有载入
根据启动日志里druid打印的信息来看,只载入了一个数据库,并没有把yml配置信息中的两个数据库都加载,YML配置如下。
从源码来看,数据源的配置读取是在AbstractDataSourceProvider类中。
他的调用是在子类YmlDynamicDataSourceProvider中。

