DI——依赖注入

简介: DI——依赖注入

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


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


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


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


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


  • 谁依赖了谁

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


  • 为什么需要依赖

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


  • 谁注入了谁

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


  • 注入了什么

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


代码实现

参照笔记:手写实现

目录
相关文章
|
7月前
|
XML Java 数据格式
Spring框架入门:IoC与DI
【5月更文挑战第15天】本文介绍了Spring框架的核心特性——IoC(控制反转)和DI(依赖注入)。IoC通过将对象的创建和依赖关系管理交给容器,实现解耦。DI作为IoC的实现方式,允许外部注入依赖对象。文章讨论了过度依赖容器、配置复杂度等常见问题,并提出通过合理划分配置、使用注解简化管理等解决策略。同时,提醒开发者注意过度依赖注入和循环依赖,建议适度使用构造器注入和避免循环引用。通过代码示例展示了注解实现DI和配置类的使用。掌握IoC和DI能提升应用的灵活性和可维护性,实践中的反思和优化至关重要。
434 4
|
4月前
|
设计模式 Java Spring
依赖注入(DI)及其三个类
【8月更文挑战第24天】
54 0
|
6月前
|
存储 前端开发 Java
Spring IoC&DI(3)—DI详解
Spring IoC&DI(3)—DI详解
47 0
|
7月前
|
容器
02_IOC控制反转 DI依赖注入
02_IOC控制反转 DI依赖注入
52 0
|
XML Java 测试技术
springIOC(控制反转)和DI(依赖注入)
springIOC(控制反转)和DI(依赖注入)
75 0
|
7月前
|
容器
IOC 控制反转和DI依赖注入
IOC 控制反转和DI依赖注入
|
7月前
|
容器
IOC&DI
IOC&DI
39 0
|
设计模式 Java 容器
DI依赖注入篇
依赖注入(Dependency Injection,DI)是一种设计模式,它用于解耦组件之间的依赖关系。在DI中,组件不再负责自己的依赖对象的创建和管理,而是由外部容器负责将依赖对象注入到组件中。
168 1
|
Java API Spring
|
XML 设计模式 前端开发

热门文章

最新文章