@Autowired的用法

@Autowired可以对类的成员变量,方法和构造方法进行自动装配,可以消除set,get方法。

原理:

在启动Spring IoC时,容器会自动装载一个AutowiredAnnotationBeanPostProcessor后置处理器,当容器扫描到@Autowired时,会在IoC容器中自动查找需要的bean,并装配给该对象的属性。

注意事项:

  在使用@Autowired时,首先在容器中查询对应类型的bean

    如果查询结果刚好为一个,就将该bean装配给@Autowired指定的数据

    如果查询的结果不止一个,那么@Autowired会根据名称来查找。

    如果查询的结果为空,那么会抛出异常。解决方法时,使用required=false

@Qualifier标记,来指定需要装配bean的名称

原文地址:https://www.cnblogs.com/whjykgz/p/12308189.html

时间: 02-14

@Autowired的用法的相关文章

SPRING IN ACTION 第4版笔记-第二章[email protected]、@Autowired的用法

一.@ComponentScan 1. @Configuration //说明此类是配置文件 @ComponentScan //开启扫描,会扫描当前类的包及其子包 public class CDPlayerConfig { } 2. @ComponentScan(basePackages={"soundsystem", "video"})//扫描多个包 public class CDPlayerConfig { } 3. @ComponentScan(basePac

resource与autowired的区别

天王盖地虎,宝塔镇河妖,春雷一声吼,码农满街走! 在最近的工作过程中,经常用到@Resource与@Autowired,今天来探究一下这两个注解的具体区别在哪儿. 首先每个人都知道,@Resource和@Autowired都是做bean的注入使用的,不同的是@Autowired是Spring自带的注解, 而@Autowired是J2EE提供的,并且使用@Autowired的时候对象必须存在 @Autowired private WheelDao wheelDao; 上面是@Autowired 的

Spring系列【5】@Autowired详解(补充)

注意:以下内容基于Spring2.5以上版本. 一共讲解四种@Autowired的用法,第一种构造方法上的使用已在前一节讲解过,本次讲解其它三种. 现在有一个老板Boss.java,他拥有一台车和一个办公室. public class Boss { private Car car; private Office office; // 省略 get/setter @Override public String toString() { return "car:" + car + &quo

Spring 3.0就这么简单读书笔记

一般情况下,spring容器中的大部分Bean都是单实例的,所以一般无须通过@Repository.@Service.@Component等注解的value属性为Bean指定名称,也无须使用@Qualifier按名称进行注入. @Autowired的用法有以下几种: 对类变量进行标注 @Autowired private LogDao logDao; 对类方法进行标注 对集合类(某个类的属性)进行标注 @Autowired private List<Plugin> plugins; @Auto

年底了,如何准备 Java 初级和高级的技术面试?

朋友最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只有当反复确认能力不行才会下结论. 相反,如果候选人给我的印象不错,我也会从多个角度来衡量,以免招进会说但不会干活的"大忽悠". 其实倒也不是我故意要为难候选人,毕竟入职后就是同事,但面试官的职责使然,而且,如果资深的面试官一般也这样. 写到这里,恐怕会吓到一些想要面试的朋友,能力强和能力弱

JAVA面试中需要准备的点

本人最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只有当反复确认能力不行才会下结论,相反,如果候选人给我的印象不错,我也会从多个角度来衡量,以免招进会说但不会干活的“大忽悠”. 其实倒也不是我故意要为难候选人,毕竟入职后就是同事,但面试官的职责使然,而且,如果资深的面试官一般也这样. 写到这里,恐怕会吓到一些想要面试的朋友,能力强和能力弱都会被多问,

面试经验贴:哪怕事先只准备1小时,成功概率也能大大提升

本人最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只有当反复确认能力不行才会下结论,相反,如果候选人给我的印象不错,我也会从多个角度来衡量,以免招进会说但不会干活的"大忽悠". 其实倒也不是我故意要为难候选人,毕竟入职后就是同事,但面试官的职责使然,而且,如果资深的面试官一般也这样. 写到这里,恐怕会吓到一些想要面试的朋友,能力强和能力弱都

Spring中@Resource与@Autowired、@Qualifier的用法与区别

1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必须要求依赖对象必须存在,如果要允许null 值,可以设置它的required属性为false,如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualifier注解进行使用,如下: 1 @Autowired() @Qualifier("baseDao&qu

Springboot @Autowired用法

2. @Autowired 作用:@Autowired表示被修饰的类需要注入对象,spring会扫描所有被@Autowired标注的类,然后根据 类型在ioc容器中找到匹配的类注入. @Autowired public class Car(Brand benz) { this.brand=benz; } 原文地址:https://www.cnblogs.com/LittleSpring/p/11252102.html