遇到找不到XXXMapper的情况,报错org.apache.ibatis.binding.BindingException: Invalid bound statement (not found),具体报错如下:
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.winky.movie.cinema.mapper.CinemaSetMapper.selectCinemaFromId
at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:235) ~[mybatis-3.5.3.jar:3.5.3]
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.<init>(MybatisMapperMethod.java:50) ~[mybatis-plus-core-3.3.1.jar:3.3.1]代码片
………………
网上所有的方法,包括mybatis-plus的版本问题,配置文件的问题,注解漏掉等等问题,我都没有出现,就是无法解决。后来我在检查配置文件的时候突然发现这样一个问题:
我的配置文件中:
mybatis-plus.mapper-locations=classpath:mapper/*.xml
意思就是扫描mapper包下所有后缀为.xml的文件,确认了我的.xml中接口名称没有错,并且MyBatisX的插件图标也生成了:
突然发现!我的.xml文件没有.xml的后缀!虽然是.xml这个格式,但是没有写出来,所以识别不到这个文件!!!
加上以后完美解决!纪念一下如此奇葩的错误!