[watermark] Spring入门
首先,Spring并不限定只编写Web应用程序。
Spring哲学原理的总称:最少侵入。
Spring框架的核心基于IoC原理。
依赖注入(Dependency Injection,DI)的好处:
1)减少“粘合”代码
2)依赖外置化
3)在统一的地方管理依赖
4)提高可测试性
5)鼓励良好的程序设计
控制反转介绍
IoC提供了这样的服务,是一个组件能够在它的整个生命周期中访问它的依赖和服务。用这种方法与它的依赖进行交互。
IoC:包含依赖注入、依赖查找。
依赖注入:包含构造器依赖注入、Setter依赖注入。
依赖查找:包含依赖拖拽、上下文配置以来查找。
因此依赖注入(Dependency Injection,DI)只是IoC的一种形式。
使用构造器注入的条件:使用组件之前就需要实例化存在依赖关系的类。
使用Setter注入的条件:某个组件对容器暴露了它的依赖关系,但是也愿意自己提供一个默认的依赖关系。
Setter注入允许依赖关系被声明为接口,但应该保持settter注入独立于商务逻辑接口。
Setter注入的最大优点:对注入机制的侵入性最小。
总之,基于setter的依赖注入是最佳选择,因为在非IoC的设置下对代码的影响最小。
Spring的IoC容器能够作为自身的依赖注入容器和外部的依赖查找容器之间的一个适配器。
[/watermark] |