您的位置:首页 > 编程语言 > Java开发

关于spring+mybatis多数据源,报Invalid bound statement的问题

2016-10-12 19:45 465 查看
(这里顺便插个简单的介绍,现在spring+mybitis的多数据源配置主要有两种方式。

   一是采用spring配置文件直接配置多个数据源,此种方式的话,两个数据库的事务在不同的service中分别操作。

          另一种是基于 AbstractRoutingDataSource 和 AOP 的多数据源的配置,此方式的特点是,可以在service中混合操作不同的数据源,需要哪个调用哪个。

         变懒了,就不写例子了,大家可以参考这篇文章http://www.cnblogs.com/digdeep/p/4512368.html)

由于项目需要配置多个数据源,根据业务需求,采用的是上述的第一种方式。但是配置完成后,一直报Invalid bound statement。经过一番折腾,参考各种文档的解释,最后找到了一种解决办法。因为将dao和mybatis的映射文件都放在了嵌套的目录里,所以在spring扫描的时候,记录了首次扫描到dao的方法,然后使用首次扫描到dao的方法,调用其他路径的映射文件时,就会提示无法找到映射文件的方法。

只需要将dao和mapping的映射文档,放在不同目录下,不可嵌套或者同级目录。就可以找到映射关系了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息