1.概述
为了避免每次mybatis出错时都要查找错误,在这里对这类错误做个总结
2. 流程
2.1. @Mapper注解
查看Mapper接口是否已注册,即是否添加@Mapper注解
2.2. 扫描规则
查看mapper映射文件是否在扫描范围内:
- 映射文件是否在
SpringBootApplication
的@MapperScan
注解的扫描范围内 - 映射文件的文件名是否符合配置文件的筛选规则
- 企业内部的框架通常会有对各种文件的文件名做规范,并将这些规范写进项目的配置文件中,因此如果没有遵守这些规范,就可能会导致文件的文件名不在包扫描的范围内
- 如果是maven工程,映射文件是否放在resources目录下
2.3. 来自IDEA的原因
在某些情况下,IDEA可能不会将映射文件复制到 target 文件夹中,因此:
- 查看target文件夹(编译后文件夹)中有没有mapper映射文件和接口
- 没有文件和接口的解决方案:
- 手动复制所需文件
- clear后重新install
2.4. 代码编写问题
查看mapper映射文件的namespace
对应的接口是否正确:
- 如果有安装mybatis插件:
- Ctrl加左键能否通过mapper接口的方法进入映射文件
- Ctrl加左键能否进入namespace对应的接口
- 接口方法旁边有没有小鸟
- 如果没有安装插件:查看
namespace
的全包名是否正确