在网上找了一圈方法后,仍然错误。 网上提供的资料参考: https://my.oschina.net/wangdaoliang/blog/652266
项目中主要不同是使用了多个数据源,最终将不同数据源的mapper interface和mapper.xml分开到不同目录后解决。
如原来mapper interface和xml的目录结构是
--package
----etl
------AMapper.java
------BMapper.java
----CMapper.java
etl目录下的mapper是Y数据源,CMapper属于X数据源。然后配置两个包的扫描
<!-- 配置扫描Mapper接口的包路径 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.platform.package"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.platform.package.etl"/>
<property name="sqlSessionFactoryBeanName" value="etlSyncSqlSessionFactory"/>
</bean>
将目录结构改为
--package
----etl
------AMapper.java
------BMapper.java
----local
------CMapper.java 后,将mybatis配置文件修改后解决。 即使得不同数据源的mapper interface和mapper xml置于不同的目录