金鞍玉勒寻芳客,未信我庐别有春。这篇文章主要讲述解决Intellij IDEA中Mybatis Mapper自动注入警告相关的知识,希望能为你提供帮助。
问题描述:
文章图片
首先说明自己出现上述原因是因为在mapper接口上方用的是@mapper标签,如果用@Repository标签替换可以解决这个问题
【解决Intellij IDEA中Mybatis Mapper自动注入警告】
(idea可以理解Spring的上下文。然而
UserMapper
这个接口是Mybatis的,IDEA理解不了。 而 @Autowired
注解,默认情况下要求依赖对象(也就是 userMapper
)必须存在。而IDEA认为这个对象的实例/代理是个null,所以就友好地给个提示。)然后在网上还看到了其他的方法,但是并不实用:
方法2:
为
@Autowired
注解设置required = false使用
@Autowired
注解时,若希望允许null值,可设置required = false,像这样:1 @Autowired(required = false) 2 private UserMapper userMapper;
这样就不会有警告了。原因很好理解:IDEA认为userMapper是个null,给了警告;加上required = false后,使用
@Autowired
注解不再去校验userMapper是否存在了。也就不会有警告了。方法3:
用
@Resource
替换 @Autowired
像这样:
1 @Resource 2 private UserMapper userMapper;
总结:后两种方法也可以解决上面的问题,但是如果项目中有大量的地方需要改动,会相当麻烦,所以推荐开始的那种方法.
推荐阅读
- 腾讯Bugly干货分享Android 进程保活招式大全
- android开发-java
- [记录点滴]在Ionic和Android中上传Blob图片
- 基于Android 班费管理App的设计与实现
- 基于OpenCV 图像处理的Android 找茬App 设计与实现
- asp.net html静态文件没有触发global.asax中的Application_BeginRequest事件的解决方法
- P5709 深基2.习6Apples Prologue 题解
- 区分 BeanFactory 和 ApplicationContext?
- 安卓cpu调速器无任务状态测评