解决mapper文件夹下的xml没有被加载的问题(Maven问题)

今天在写SpringBoot整合MyBatis Plus项目的时候,发现找不到我写在xml文件中的sql语句,提示内容:

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

此时,在target文件夹中可以看到xml文件
在这里插入图片描述
然后我就忽略了检查在配置文件(application.properties)中配置的扫描路径
最后发现是路径填写错误的问题

右键单击mapper文件,然后选择copy——Path From Source Root,复制路径
在这里插入图片描述
然后写到配置文件中:
在这里插入图片描述
问题就解决啦。
如果要保证配置完全正确,还有以下几个地方要注意的地方:
1、xml文件中namespaceresultMap,建议采用复制的方式
在这里插入图片描述namespace——指定Mapper接口。
resultMap —— 映射类,指定VO类或者实体类。
PS:
查询多个值用 resultMap指定映射类。
查询单个值用 resultType指定返回类型。
2、除了在配置文件中配置mapper xml文件的路径之外,还需要在启动类上面配置包扫描路径
在这里插入图片描述
在这里插入图片描述

3、在pom.xml的build标签内配置 不过滤配置文件
(maven工程在默认情况下不会将src/main/java目录下的文件发布到target目录下)

<build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>*.properties</include>
                    <include>*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值