2019-04-19 EasyWeb数据源问题

时间:2023-03-09 05:45:11
2019-04-19 EasyWeb数据源问题

问题描述:今天增加了个新模块,为了让各个模块自己保留自己的数据源配置,所以把数据源配置类放入自己模块包中,但是进行请求发现数据源会先选择默认的数据源,导致报错说主数据源下不存在表;当我把配置文件放回统一的位置时,问题解决;我一开始以为是几个数据源和事务数据源加载优先级问题,给他们都加了@Order来设置优先级,但是结果只要我把他们挪到别的包下,就会报错

2019-04-19 EasyWeb数据源问题

问题解决:原来在com.wf.ew.common.config.MybatisPlusConfig配置类中也存在@MapperScan("com.wf.ew.*.dao")扫描,导致无法正确根据包名来确定数据源;把该类的扫描去掉即可

问题延伸:既然是包扫描重复导致了无法正确根据包来判断使用哪个数据源,那为什么把配置类放到该包或者该包子包下可以,放到别的包下就不行呢?是否@MapperScan会进行判断是否已经扫描过该Mapper类,如果在同一包下就会再次放入到不同的SqlSession里面,不是在同一个包或子包的话就不再处理该Mapper类