ibatis.binding.BindingException:Invalid bound statement (not found):

一、问题描述:

项目中创建mapper接口,编写xml文件sql语句,执行出现错误-----

无效的绑定语句(未找到)

二、问题原因

1.(少数) xml文件中方法的id名与mapper中的方法名不对应

2. 这个错误是由maven默认加载机制造成问题

众所周知,利用mp代码生成器,mapper层如下,有xml文件,有接口。

但在target文件中,则没有xml文件,------->maven加载时候,把java文件夹里面.java类型文件进行编译,如果其他类型文件,不会加载

三、解决方法

1.复制xml文件 到target目录中

2.把xml文件放到resources目录中

3.(推荐)通过配置实现

        ①pom.xml  中加入

<!-- 项目打包时会将java目录中的*.xml文件也进行打包 -->
<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
</build>

        ②application.properties  中加入

#配置mapper xml文件的路径
mybatis-plus.mapper-locations=classpath:com/sxy/eduservice/mapper/xml/*.xml

        重新打包即可。