在使用mybatis的时候,报Invalid bound statement,如下图所示:

image.png

原因是*mapper.xml文件没有注册上

一般原因如下:

1、检查xml文件的namespace是否对应接口,要是全路径。
xml文件名不需要和接口名一致,namespace和接口全类名一致即可。

2、xml中的函数id和接口中的函数名是否对得上,参数类型、返回值类型是否对得上,多参数记得加@Param

3、去看输出目录(target/classes)里有没有*mapper.xml文件。

4、查看application.yml里有没有配置mapper-locations,如下所示

mybatis:
  mapper-locations: classpath:mapper/*.xml

5、以上都没有问题,看看自己是不是用了多数据源,在多数据源下不能简单的和4使用的配置一样了,需要使用Config对象进行数据源分别配置或者使用mybatis-plus的动态数据源


点墨
26 声望3 粉丝

全栈前端开发工程师