Invalid bound statement (not found): com.ruoyi.system.mapper.SysConfigMapper.selectConfigList

最近在练习用RuoYi-Vue快速搭建前后端分离项目,但是clone下来放到自己本地idea启动system模块的时候,遇到了一个大坑。启动总是显示Invalid bound statement (not found): com.ruoyi.system.mapper.SysConfigMapper.selectConfigList,正常来讲,这个错误肯定是mapper接口与xml文件没有编译到一起导致无法映射的原因,看了一下target目录,果然如此。

在这里插入图片描述

然后就开始了漫长的解决之路,首先了解出现此问题的几大原因

1、检查Mapper.xml中的方法名和Dao类方法是否一致,检查无误

2、检查Mapper.xml文件中的namespace是否是正确的Dao类全限定名,这里虽然直观上看不一样,但是使用了mapperLocations实现xml和接口的绑定,也不应该有问题

3、检查Mapper.xml文件中方法返回值和Dao类的方法返回值是否一致,ResultMap要注意type是否正确,ResultType要注意是返回结果的一条记录的类型。这里同样是直观上看不一致,但是同样在配置中使用了typeAliasesPackage进行了别名设置,ResultType不需要写全名,只需要直接写类名。同样不是这个原因

4、检查Mapper.xml在配置文件或者配置类中的路径是否正确,检查无误

Logo

快速构建 Web 应用程序

更多推荐