springboot整合mybatis出现Invalid bound statement (not found)

出现这个异常不要慌,博主带你分析一下这个错误的罪恶源头和解决方案
一:罪恶源头:出现这个异常是因为数据访问层中的mapper接口和对应的xml文件无法映射
无法映射的原因有:
1,可能因为xml文件中的namespace属性值路径和你接口的路径不一致

解决方案:这个地方的namespace的路径和你接口的路径一定要保持一致
排查一下你项目的target部署文件中的classes目录 是否有你对应的xml文件

如果没有!!!肯定运行时找不到映射文件了
解决方案:在pom.xml文件中添加如下代码
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
3.博主亲自踩坑,在springboot主配置文件也就是项目自动生成的application.properties文件中添加如下代码
mybatis.typeAliasesPackage=com.smbms.mybatis.popj
mybatis.mapperLocations=classpath:mapper/*.xml
mybatis.typeAliasesPackage对应的是你自己项目中的实体类路径
mybatis.mapperLocations可以理解为扫描后面路径的xml文件
总结,按照以上3步排查和解决基本上可以解决问题
如果道友们还没有解决的话也可以评论区讨论一下
4862

被折叠的 条评论
为什么被折叠?



