当前位置:网站首页>idea使用@Autowired注解爆红原因及解决方法
idea使用@Autowired注解爆红原因及解决方法
2022-08-03 04:46:00 【奇怪的大象】
在使用idea的@Autowired注解注入Mapper文件时,有时会标红,但是不影响项目运行,那么是什么原因呢
原因
先看一下@Autowired源码:
@Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.PARAMETER, ElementType.FIELD, ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Autowired {
/**
* Declares whether the annotated dependency is required.
* <p>Defaults to {@code true}.
*/
boolean required() default true;
默认值为true说明@Autowired注解必须要注入一个非空的对象,@Autowired注解的包,来自于:
import org.springframework.beans.factory.annotation.Autowired;
@Mapper的包来自于:
import org.apache.ibatis.annotations.Mapper;
总结报错的原因:@Autowired注解需要一个非空的对象,而@Autowired是SpringFramework的,但是它引入的对象是Mybatis的@Mapper注解,而idea不能很好地识别Mybatis的注解,所以idea不能确认当前要注入的对象是否为非NULL对象。
引申:如果把@Autowired注解的默认值设为false也不会报错
解决方案
1).使用@Resource注解,这是一个java注解;
2).在idea的setting里把Autowired中error关了:
3).在mapper层添加上一个SpringFramework的注解,比如@Repository注解:
@Mapper
@Repository
public interface UserMapper {
}
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- 常见荧光染料修饰多种基团及其激发和发射波长数据一览数据
- 三丁基-巯基膦烷「tBuBrettPhos Pd(allyl)」OTf),1798782-17-8
- Kotlin-Flow常用封装类:StateFlow的使用
- [Harmony OS] [ArkUI] ets development graphics and animation drawing
- 【生物素叠氮化物|cas:908007-17-0】价格_厂家
- 多肽介导PEG磷脂——靶向功能材料之DSPE-PEG-RGD/TAT/NGR/APRPG
- 在竞争白热化的电商行业,链动2+1为什么还有企业在用
- Flink state
- typescript41-class类的私有修饰符
- Test drive: project management module - curd development project
猜你喜欢

BIOTIN ALKYNE CAS:773888-45-2价格,供应商

测试人员的价值体现在哪里

Assembly answers

【HMS core】【Ads Kit】Huawei Advertising——Overseas applications are tested in China. Official advertisements cannot be displayed

【生物素叠氮化物|cas:908007-17-0】价格_厂家

在竞争白热化的电商行业,链动2+1为什么还有企业在用

IO进程线程->线程->day5

MySQL 入门:Case 语句很好用

DFS's complement to pruning

「短视频+社交电商」营销模式爆发式发展,带来的好处有什么?
随机推荐
接口和协议
rosbag工具plotjuggler无法打开rosbag的问题
常见亲脂性细胞膜染料DiO, Dil, DiR, Did光谱图和实验操作流程
接口测试实战| GET/POST 请求区别详解
MCM箱模型建模方法及大气O3来源解析
Coordinate knowledge in digital twin campus scenarios
移动流量的爆发式增长,社交电商如何选择商业模式
Interface Test Framework Practice (4) | Get Schema Assertion
4.深度学习的几何解释与梯度的优化
探索性测试的概念及方法
Create a tree structure
typescript49-交叉类型
索引创建、删除与使用
Online password generator tool recommendation
【Harmony OS】【ARK UI】ETS 上下文基本操作
Technology Sharing | How to do assertion verification for xml format in interface automation testing?
软件开发的最大的区别是什么?
接口管理工具YApi怎么用?颜值高、易管理、超好用
Two ways to simulate multi-user login in Jmeter
Shell条件语句判断