springboot项目中mapper.xml文件找不到(Invalid bound statement (not found): com.yoe.mapper.UserMapper)

通常mapper文件找不到会报这种异常:

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

主要是因为使用maven在编译项目时,会默认不打包java文件夹下的xml文件 所以我们在执行时 会报上面的异常

最近自己遇到了这种问题 查资料啥的找到了以下三种解决方式:

1.如果你的mapper映射文件也是放在 Java文件下 你可以直接在项目编译后 把mapper文件复制到
编译后的target文件夹下对应的文件中去
在mapper文件下新建一个xml文件夹 把xml文件复制到这里面来即可,不过每次都这样也挺麻烦的

2.在pom.xml中配置

<build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

表示 maven在打包时不会过滤src/main/java文件夹下的xml文件
在application.properties文件中配置

#配置mapper xml文件的路径

mybatis-plus.mapper-locations=classpath:com/lcx/educms/mapper/xml/*.xml

项目重新编译后 查看你的target文件 会发现它把xml文件 打包进去了

3.把xml文件放在resources文件下

在application.properties文件中配置

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

记录一下自己踩的坑:其中你如果在resource下创建类似com.test.mapper文件夹,target是把com.test.mapper作为整个文件夹,然后你这样配置

mybatis-plus.mapper-locations=classpath:com/test/mapper/*.xml

同样会报错,找不到xml文件
这时需要这样配置

mybatis-plus.mapper-locations=classpath:com.test.mapper/*.xml
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值