spring boot由于mapper文件中对象类型使用短名称无法注册bean而自动注入失败问题
前几天项目组准备使用若依框架,但编译其后台(spring cloud项目),死活运行不了,总是提示mybatis对象无法注入。
Could not autowire. No beans of 'SysConfigMapper' type found.
无法注入的原因,是没有相应的bean,既无法构造对应的mybatis对象。后来同事告诉我,是因为mapper.xml里的对象类型使用了简写,而配置文件缺乏相应配置项的缘故。详细如下:
SysConfigMapper.xml,可见其中的type只写了一个简短的类名,而不是完整的,带有包名的类名。

对比我们平时习惯的写法:

对于mapper中数据对象类型使用简短名称的做法,配置文件需要将包名补全:

浙公网安备 33010602011771号