核心思想
IoC(控制反转) 、DI(依赖注入)
作用:借助于“第三方”实现具有依赖关系的对象之间的解耦,即通过引入 IoC 容器,利用依赖关系注入的方式,实现对象之间的解耦。
基本技术
反射(Reflection)
Ioc 产品
- .Net IOC容器:Spring.Net、Castle
- Sun ONE IoC容器:Spring、Guice、Pico Container、Avalon、HiveMind;EJB;
Spring.Net 过程阶段
- 容器启动阶段
- Bean实例化阶段
Spring.Net 实现方式
接口注入
缺点:强制被注入对象实现不必要的接口构造方法注入
缺点:参数列表维护setter方法注入
推荐方法
Spring.Net IoC 容器
- BeanFactory
- ApplicationContext
对象依赖信息
- 通过最基本的文本文件来记录被注入对象和其依赖对象之间的对应关系
- 通过描述性较强的XML文件格式来记录对应信息
- 通过编写代码的方式来注册这些对应信息
- 通过注解方式来注册这些对应信息