在学习spring boot整合mybatis过程中应该经常碰到mybatis异常"BindingException:Invalid bound statement (not found)";
往往网上查找原因大多都归结为以下几种原因:
然而个人感觉, 有一个原因才是这个问题最容易碰到的情况:
大多数SpringBoot教程,大都推荐把mapper.xml文件写在java文件夹下的某子包中,比如java/com/.../.../mapper或者java/com/.../.../dao等等这一类包下。然而springboot项目本身属于maven项目(只不过依赖的版本大多交由spring-boot-starter-parent去解决),而maven项目默认资源路径是main/resources,所以在java路径下的xml资源maven是不会主动扫描的,所以spring boot教程很多都忽略了这个重要的点。
如果按照教程推荐的路径中放xml文件,那么务必要手动配置项目的resource路径,让maven主动扫描xml文件:
<resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*xml</include> </includes> </resource> <resource> <directory>src/main/resources</directory> </resource> </resources>
SpringBoot整合MyBatis,BindingException问题
原文:https://www.cnblogs.com/flincasnote/p/10956958.html