确认

  • [x] 我的版本是最新版本, 我的版本号与 version 相同, 并且项目里无依赖冲突
  • [x] 我已经在 issue 中搜索过, 确认问题没有被提出过
  • [x] 我已经修改标题, 将标题中的 描述 替换为遇到的问题

功能改进

因@ConditionalOnSingleCandidate(DataSource.class) MybatisPlusAutoConfiguration 在多数据下不会生效,但是我非常喜欢MybatisPlusAutoConfiguration的功能,所以我在项目中分别创建了2个MybatisConfig 配置类继承MybatisPlusAutoConfiguration 但是这样带来一个问题:两个SqlSessionFactory使用的是同一个GlobalConfig对象,都是从MybatisPlusProperties中获取的,通过GlobalConfig获取SqlSessionFactory只会得到最后创建的SqlSessionFactory 因而导致某些操作出现错误:Mapped Statements collection does not contain value 建议:全局缓存GlobalConfig并不是一个好的设计,有悖面向对象的思想,个人浅见:既然已经自定义了MybatisConfiguration,将MybatisConfiguration和GlobalConfig合并

参考资料

No response

Comment From: miemieYaho

那你有看过都有哪些地方用了吗?你有解决方案吗?

Comment From: ming4762

com.baomidou.mybatisplus.core.toolkit.GlobalConfigUtils#getGlobalConfig 合并之后这个函数就不用要了 SqlSessionFactory 和 MybatisConfiguration互相持有指针,也不需要如下代码: com.baomidou.mybatisplus.core.toolkit.MybatisUtils#getSqlSessionFactory

Comment From: miemieYaho

你的问题是你不应该继承MybatisPlusAutoConfiguration,你需要你自己写AutoConfiguration以避免使用到同一个MybatisPlusProperties