Invalid bound statement (not found)错误的可能原因

Invalid bound statement (not found)这个问题的实质就是 mapper接口和mapper.xml没有映射起来

常见的低智商问题有下列几个:

1.mapper.xml 里面的 namespace与实际类不一样
mapper.xml 里面的 namespace应该是其对应的接口路径。这个有个快捷的检测办法就是按住ctrl键,然后点击namespace里面的包名,如果能跳到对应的类,那就说明没问题。

2.mapper接口的函数名称和mapper.xml里面的标签id不一致
这个问题也很常见,最好的办法还是复制过去,这样可以确保没得问题,1点和2点都是关于拼写错误的情况

3.构建没有进去,请看一下target文件夹下面这些是否存在,没有请重新构建


image.png

4.包扫描路径是否正确
检查mybatis的配置是否正确,需要配mapperLocations和typeAliasesPackage属性。
也可以在springboot启动类上面加@MapperScan注解,指定扫描路径

@MapperScan("xx.xx.xx.mapper")

5.配置文件写错
如果你是Mybatis的话请注意yml或者properties文件里面的

mapper-locations: classpath:mybatis/mapper/**/*.xml   #这个地方是否写错
type-aliases-package: com.xx.xx.xx                    #是否对应实体类

如果你是Mybatis plus 这个时候你要注意了,mybatis plus是下面这样的配置,如果你发现1,2,3,4点的问题都没有问题,你需要注意一下这个东西

mybatis-plus:
  type-aliases-package: xxx.xxxx.xxx.xxx
  mapper-locations:
    - classpath:mybatis/mapper/**/*.xml

参考:https://blog.csdn.net/qq_33259323/article/details/104660309

你可能感兴趣的:(Invalid bound statement (not found)错误的可能原因)