org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):
找不到mappper中定义的方法
造成这何种错误的原因是因为,项目编译时只编译加载了src/main/java下的java文件而不会编译加载.xml文件,编译过后的项目会在target下,从target下可以看到mapper包下并没有.xml文件
解决方法
1、把.xml文件复制到target中的mapper下
2、把.xml文件放入resources中
3、通过配置文件解决
(1)在当前项目的pom.xml文件中配置
<!-- 项目打包时会将java目录中的*.xml文件也进行打包 --> <build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
(2)在当前项目的application.properties文件中配置.xml文件路径
#配置mapper xml文件的路径 mybatis-plus.mapper-locations=classpath:com/example/education/mapper/xml/*.xml
如果以上方法并不能解决你的问题,请检查自己的mapper文件和.xml文件的名字是否一样,还有mapper中定义的方法名和.xml文件中相关sql的id值是否一样