解决Exception in thread "main" org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.kuang.dao.TeacherMapper.getTeacher问题
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题,即在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。
Mapper接口开发需要遵循以下规范:
-
-
Mapper接口方法名和Mapper.xml中定义的每个statement的id相同
-
Mapper接口方法的输入参数类型和mapper.xml中定义的每个sql 的parameterType的类型相同
- Mapper接口方法的输出参数类型和mapper.xml中定义的每个sql的resultType的类型相同
发现这个错误后,经过各种百度,CSDN,核对各种方法名,包名,仍未发现问题。
后来发现这样一条博客:
https://blog.csdn.net/weixin_44757863/article/details/109301707
于是,我不再使用以“·”分割子目录的方法,而是使用分次创建子目录。
结果这样还是不行,还是报一样的错误。
最终,我参考下面同学的解决方法:
https://www.cnblogs.com/lixiaobin123/p/12651510.html
以这样的方式创建包:com/kuang/dao
最后成功运行!
最后,感谢狂神的MyBatis课程!受益匪浅!
https://www.bilibili.com/video/BV1NE411Q7Nx?p=20&spm_id_from=pageDriver