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

上述报错大致原因为mapper.xml找不到!

出现该报错的原因有三个:

  1. 命名空间的路径限定名与需要映射的mapper类不一致

解决方式:检查namespace的映射路径和映射mapper路径是否一致

  1. xml文件中的sql语句id与mapper类中方法名不一致

解决方式:检查方法名和id是否一致。

  1. 由于maven的加载机制中在src/main/java目录下只加载后缀名为.java的文件,故扫描不到我们的xml文件。

解决方式一:将我们的xml文件转移至resource目录下,并创建与mapper类的同样的包,以上上述为例为:com/aliyev/auth/mapper。

解决方式二:修改pom文件和yml文件

mybatis-plus: #如果你用的框架为mybatis,则改为mybatis!
    mapper-locations: classpath:com/aliyev/auth/mapper/xml/*.xml #xml文件相对路径

如果你用的框架为mybatis,则最上面改为mybatis!

<build>
    <resources>
        <resource>
            <!--给maven指明加载xml文件-->
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.xml</include>
                <include>**/*.yml</include>
                <include>**/*.properties</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
<build/>

猜你喜欢

转载自blog.csdn.net/qq_61544409/article/details/129647249
今日推荐