当前位置:网站首页>idea使用@Autowired注解爆红原因及解决方法
idea使用@Autowired注解爆红原因及解决方法
2022-08-04 05:36:00 【m0_67402588】
在使用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开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- Computer software: recommend a disk space analysis tool - WizTree
- “需求370解决解决爬取章节之后主题讨论评论消失问题”工作总结
- Memory Management
- RHCE之路----全
- 目标检测中的IoU、GIoU、DIoU与CIoU
- Memory limit should be smaller than already set memoryswap limit, update the memoryswap at the same
- 舍不得花钱买1stOpt,不妨试试这款免费的拟合优化神器【openLU】
- 误差指标分析计算之matlab实现【开源1.0.0版】
- 原型图总结规范
- IoU, GIoU, DIoU and CIoU in target detection
猜你喜欢
ThreadLocal内存泄漏问题讲解
Hardware Knowledge: Introduction to RTMP and RTSP Traditional Streaming Protocols
Detailed explanation of DenseNet and Keras reproduction code
在线公众号文章内容转音频文件实用小工具
2DCNN, 1DCNN, BP, SVM fault diagnosis and result visualization of matlab
狗都能看懂的Vision Transformer的讲解和代码实现
什么是多态。
Nacos 原理
QT 出现多冲定义问题
解决腾讯云DescribeInstances api查询20条记录以上的问题
随机推荐
数据库知识:SQLServer创建非sa用户笔记
Jenkins pipeline 自动部署实践
Scheduler (Long-term,Short-term, Medium-term Scheduler) & Dispatcher
EfficientNet解读:神经网络的复合缩放方法(基于tf-Kersa复现代码)
目标检测中的IoU、GIoU、DIoU与CIoU
狗都能看懂的变化检测网络Siam-NestedUNet讲解——解决工业检测的痛点
数据库JDBC DAO层方法
53个全球免费学术资源数据库整理,查资料写论文必备【开学必备】
数据库:整理四个实用的SQLServer脚本函数
SENet详解及Keras复现代码
数据库文档生成工具V1.0
ThreadLocal内存泄漏问题讲解
基于时序模式注意力机制(TPA)的长短时记忆(LSTM)网络TPA-LSTM的多变量输入风电功率预测
SegNet——论文笔记
Uos统信系统 本地APT源配置
CMDB 腾讯云部分实现
舍不得花钱买1stOpt,不妨试试这款免费的拟合优化神器【openLU】
用matlab打造的摩斯电码加解码器音频版,支持包括中文在内的任意字符
ResNet详解:ResNet到底在解决什么问题?
SENet detailed explanation and Keras reproduction code