解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 问题

排查思路

1:检查xml文件所在的package名称是否和interface对应的package名称一一对应
2:检查xml文件的namespace是否和xml文件的package名称一一对应
3:检查函数名称能否对应上

项目结构目录
在这里插入图片描述
这里的namespace需要对应对应的接口全包名,文件夹目录是不是一样的不影响。
在这里插入图片描述

如果都对应了还是出现这种错误,需要在application.yml配置文件加上mybatis配置
mybatis:
mapper-locations: classpath*:mapper/*Mapper.xml

server:
  port: 8080
spring:
  thymeleaf:
    cache: false
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT
    username: username
    password: password
mybatis:
  mapper-locations: classpath*:mapper/*Mapper.xml

最后如果都不行的话需要看一下部署项目的文件目录有没有加载,如下:
我的pom.xml配置文件的resources的配置有问题,导致项目部署的时候没有加载到我的mybatis文件夹目录下面的xml配置文件,需要将include标签的内容修改,**/*这样的写法,是为了保证各级子目录下的资源文件被打包,利用maven打包时,就需要修改pom.xml文件,来把mapper.xml文件一起打包进jar或者war里了,否则,这些文件不会被打包的。

<includes>
    <include>**/**</include>
</includes>

在这里插入图片描述
修改后:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值