关于target文件夹下没有*.xml文件报错Invalid bound statement (not found)

关于target文件夹下没有*.xml文件

项目背景

在搭建springboot项目用于学习时,编写了一个简单的根据主键查询的controller,service,mapper,在浏览器输入路由后,应该输出对应的json数据,但是我测试时发现后台报错,报错内容如下:Invalid bound statement (not found):XXX注:XXX为mapper文件路径

解决思路

  1. 问题可能原因1
    一般这种问题有可能是你的mapper.xml文件的namespace路径错误,或者方法名称错误,亦或是入参与出参不匹配比如出参类型错误,或者包名称错误,不过经过我仔细排查后发现这些路径与参数类名并没有错误,因此我怀疑是第二种原因
  2. 问题原因2
    我查找了target文件夹下,发现在target/mapper文件夹下只有我的mapper接口,而没有*.xml文件,于是我猜测应该是xml文件未被识别,一般来说xml文件是放在resources文件夹下。但是我这个由于是自己随手写的学习项目,所以我的mapper接口和xml文件放在了一起,如下:
    项目结构
    所以,解决办法是让项目将java目录和resources目录下的xml文件都扫描,因此需要在pom文件中的build标签下添加如下:
<resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                    <include>**/*.yml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                    <include>**/*.yml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>

然后执行clean,再install。之后便可以在target文件夹下找到相关的*.xml文件,重新运行项目,访问成功。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值