https://www.cnblogs.com/doudou618/p/4325995.html
总结:Spring通过DI(依赖注入)实现IOC(控制反转),注入的方式有:set方法,构造器注入,实例工厂方法,静态工厂,注解
2.常用的注入方式主要有三种:构造方法注入,setter注入,基于注解的注入。
Spring基于注解注入的两种方式
1.@Autowried
1)默认基于类型查找容器的的Bean进行注入(注入的Bean的实现类是唯一的)。
2)当实现类的Bean大于一个的时候,需结合@Qualifier,根据Bean的名称来指定需要注入的实例。或者使用@Primary注解标注具体的Bean来让Spring优先选择该Bean进行注入
3)@Autowried注解可以标注在构造方法、set方法(属性)、字段
@Qualifier标注在方法参数、set方法、字段上、类型上
@Primary标注在类上以及方法上
2.@Resource(JSR250的标准)
1)默认是基于Bean的名称进行注入,如果查找的name不存在,则会根据类型进行查找
2)当指定name属性时,则只按照名称进行查找
3)当指定type属性时,则只按照类型进行查找
4)当指定name和type时,则这两个属性必须同时满足才可注入