- 一、问题描述
- 二、解决过程
- 三、关键点来了!
- --
- 总结
一、问题描述
在学习mybatis时需要创建一个新项目,可是配置完试的时候,报了Invalid bound statement (not found)错误
什么意思呢?
就是mapper.xml文件和mapper接口没有对应起来呗~
看了很多大佬已经总结好的问题,无非就是namespace写错了、mapper接口或者xml文件名字没对应上等,多次排查之后发现确实没这方面问题 = =
那就是mybatis配置文件里的问题了,毕竟xml文件和接口映射的语句写在这里了嘛
这是我的mybatis配置文件里映射部分和文件结构
众所周知,现在建立xml文件一定是在resources文件下建立一个和接口所在包相同名称的文件夹。所以,当其他地方都没有问题的时候,你就要考虑一下自己resources下的mapper包如果像我一样是 嵌套的 !!那你在建立的时候如果不是一个一个文件夹的建立,而是直接建一个多层嵌套的文件夹,则一定会报我这个错误。即使这两种方法建立的文件夹结果是一样的形式!
即:
先建第一个文件件再建第二个文件夹
和直接嵌套建文件夹结构是一样的!
但是映射去寻找的时候多层只能找到一个一个建成的包。
血与泪的教训 = =、、在resources里建多层文件夹的时候千万不能和mapper接口文件夹里一样直接建,一定要分开!希望凌晨两点终于解决的这个问题能帮到你们。