这篇文章主要介绍了spring依赖注入深入理解,列举了最常见的注入方式,有感兴趣的同学可以研究下
IOC&&DI
IOC(Inversion of Control)一般分为两种类型:依赖注入DI(Dependency Injection)和依赖查找(Dependency Lookup)
org.springframework.beans.factory.BeanFactory是IOC容器的具体实现,是Spring IOC容器的核心接口
Spring IOC负责创建对象,管理对象,装配对象,配置对象,并且管理这些对象的整个生命周期。
优点:把应用的代码量降到最低。最小代价和最小侵入式是松散耦合得以实现。IOC容器支持加载服务时的饿汉式初始化和懒加载
DI依赖注入是IOC的一个方面,不需要创建对象,只需描述如何被创建,在配置文件中描述组件需要哪些服务,之后IOC容器进行组装
IOC的注入方式:1、构造器依赖注入 2、Setter方法注入 3、工厂方法注入(很少使用)
Setter方法注入
通过Setter方法注入bean的属性值或依赖的对象,是最常用的注入方式
构造器注入
构造器注入需要提供相应的构造器
但是如果存在重载的构造器的话,只使用index索引方式无法进行精确匹配,还需要使用类型type来进行区分,index和type可以搭配使用
public Car(String brand, double price) { this.brand = brand; this.price = price; } public Car(String brand, int speed) { this.brand = brand; this.speed = speed; }
以上就是spring依赖注入深入理解的详细内容,更多请关注0133技术站其它相关文章!