网上搜索试了以下方法:
- 查看mapper.xml文件所在位置,放在resouces底下,只用在扫包的时候配置扫描xml的路径;如果是放在src底下,项目打包时会自动加载里面的文件,所以需要在pom.xml文件里加上扫描src底下该mapper的路径。
- 查看接口mapper的方法名和xml中sql的id能否对上(推荐安装free Mybatis plugin 方便查看)
- resultMap返回值是否正确
最终还是不行,于是又重新写了一遍,还是不行,然后偶然发现自己犯了一个低级错误:
由前面可以确定自己的mapper.xml没有加载进去,所以试了下把自己的mapper文件夹删掉,重建时发现我的mapper文件夹只写了一层,和我的扫描路径不符。
刚开始没注意这里,只是为了看着方便,
这里为了方便勾选了Compact Middle Packages
重建之后,取消勾选,很明显能看出这是个两层文件夹