GlobalExceptionHandler.java:22 (mybatis的xml文件没有被打包的一种解决方案)

导读:本篇文章讲解 GlobalExceptionHandler.java:22 (mybatis的xml文件没有被打包的一种解决方案),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

一、问题描述

环境:springcloud + mybatis-plus

访问查询列表的接口时,报错如下:

ERROR |http-nio-8888-exec-9 |GlobalExceptionHandler.java:22 |com.xxx.xxx.service.base.handler.GlobalExceptionHandler |Invalid bound statement (not found): com.xxx.xxx.service.xxx.mapper.XxxMapper.selectBypIds

二、原因

dao层编译后只有class文件,没有mapper.xml,
因为maven工程在默认情况下src/main/java目录下的所有资源文件是不发布到target目录下的

GlobalExceptionHandler.java:22 (mybatis的xml文件没有被打包的一种解决方案)

三、解决

1、在对应的项目的pom.xml中配置:

这样项目在打包时就会将java目录中的*.xml文件也进行打包

<build>
    
    <!-- 项目打包 -->
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
</build>

检查:在pom.xml中进行上述配置后,重新打包项目,看看target目录下是否成功出现了xml文件夹。

2、然后在配置文件application.yml中配置:

mybatis-plus:
  #配置到xml的包名,告诉框架xml的位置
  mapper-locations: classpath:com/xxx/xxx/service/xxx/mapper/xml/*.xml

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/117629.html

(0)
seven_的头像seven_bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!