配置了多数据源之后, 启动没有报错, 但是请求接口的时候报org.apache.ibatis.binding.BindingException: Invalid bound statement (not found). 我一直怀疑是不是因为配置了多数据源有冲突导致的.
这个报错, 其实是@MapperScan包没有精确到dao层.
一开始写的是:
@MapperScan(basePackages = {"com.example.test.manage.*"}, sqlSessionTemplateRef = "sqlSessionTemplate1")
后来改成下面这个就好了:
@MapperScan(basePackages = {"com.example.test.manage.dao"}, sqlSessionTemplateRef = "sqlSessionTemplate1")
package名称要对应Mapper interface所在包名. 除非与dao同级的其他包下面没有interface.