IDEA使用mybatis-plus 时出现的问题 Property ‘mapperLocations‘ was not specified &Invalid bound statement

在使用IDEA和Mybatis-Plus时遇到Property 'mapperLocations'未指定和Invalid bound statement错误。问题源于IDEA默认不编译源码文件夹中的XML文件。解决方法是将XML配置文件移至resource目录,并在POM中指定资源扫描,对于Maven多模块项目,需使用classpath*前缀加载XML。
摘要由CSDN通过智能技术生成

踩坑 IDEA默认是不解析xml的

引言:
对于IDEA系列编辑器,XML 文件是不能放在 java 文件夹中的,IDEA 默认不会编译源码文件夹中的 XML 文件。

我在使用IDEA 编写Mybatis-plus时,写的自定义SQl语句总是显示 Invalid bound statement (not found)
根据报错信息可以看到是Mapper中自己写的自定义方法 没有绑定相应的SQL语句

检查了一遍配置,都没有问题,而Sprinboot启动时 log中Property 'mapperLocations' was not specified这句提示引起了我的注意

配置中配置了mybatis-plus.mapper-locations=classpath*:**/mapper/xml/*.xml,但启动器没扫描到,十分奇怪。

后来才知道从Mybatis-plus 官方文档找出了答案
因为对于IDEA系列编辑器,XML 文件是不能放在 java 文件夹中的,IDEA 默认不会编译源码文件夹中的 XML 文件。
果然我在POM中没有指明解析xml,在启动后生成的target 目录下文件的mapper包下没有找到相应的xml

解决方法

将配置文件放在 resource 文件夹中
对于 Maven 项目,可指定 POM 文件的 resource

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值