DI——依赖注入

简介: DI——依赖注入

实际上 DI(依赖注入)不是架构思想,它只是 IoC(控制反转) 的一种实现方式。之所以将其列到这里,是因为大多数的程序都是通过 DI 来实现 IoC 的,导致很多人分不清 IoCDI 的关系。同时,只介绍 IoC 而不介绍 DI 实现,显得苍白无力。关于 IoC 的介绍,参见笔记


组件之间的依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。


依赖注入的 目的 并非为软件系统带来更多功能,而是为了提升组件重用的频率,并为系统搭建一个灵活、可扩展的平台


通过依赖注入机制,我们只需要通过简单的配置,而无需任何代码就可指定目标需要的资源,完成自身的业务逻辑,而不需要关心具体的资源来自何处,由谁实现。


理解 DI 的关键是: 谁依赖了谁,为什么需要依赖,谁注入了谁,注入了什么


  • 谁依赖了谁

显而易见,是 应用程序 依赖了 IoC容器


  • 为什么需要依赖

应用程序 需要 IoC容器 来提供对象需要的外部资源(包括对象、资源、常量数据等)


  • 谁注入了谁

显而易见,是 IoC容器 注入了应用程序依赖的对象


  • 注入了什么

注入了某个对象所需的外部资源(包括对象、资源、常量数据等)


代码实现

参照笔记:手写实现

目录
相关文章
|
3月前
|
设计模式 Java Spring
依赖注入(DI)及其三个类
【8月更文挑战第24天】
34 0
|
5月前
|
存储 前端开发 Java
Spring IoC&DI(3)—DI详解
Spring IoC&DI(3)—DI详解
38 0
|
6月前
|
容器
02_IOC控制反转 DI依赖注入
02_IOC控制反转 DI依赖注入
46 0
|
XML Java 测试技术
springIOC(控制反转)和DI(依赖注入)
springIOC(控制反转)和DI(依赖注入)
71 0
|
6月前
|
容器
IOC 控制反转和DI依赖注入
IOC 控制反转和DI依赖注入
|
6月前
|
容器
IOC&DI
IOC&DI
35 0
|
设计模式 Java 容器
DI依赖注入篇
依赖注入(Dependency Injection,DI)是一种设计模式,它用于解耦组件之间的依赖关系。在DI中,组件不再负责自己的依赖对象的创建和管理,而是由外部容器负责将依赖对象注入到组件中。
148 1
IOC控制反转 + DI依赖注入
一种思想,两种实现方式 IOC (Inversion of Control):控制反转,是一种概念和思想,指由Spring容器完成对象创建和依赖注入 核心业务:(a)对象的创建 (b)依赖的注入 2种实现方式 基于xml实现IOC 基于注解实现IOC 基于xml的IOC在前3篇Spring博客中简单探讨过了,后面将探讨基于注解的IOC
|
Java Spring
Spring - IOC(控制反转) & DI(依赖注入)
Spring - IOC(控制反转) & DI(依赖注入)
138 0
Spring - IOC(控制反转) & DI(依赖注入)
|
XML 存储 Java