第 3 章 IoC(控制反转)容器

目录

3.1. 简介
3.2. 基本原理 - 容器和bean
3.2.1. 容器
3.2.2. 实例化容器
3.2.3. 多种bean
3.2.4. 使用容器
3.3. 依赖
3.3.1. 注入依赖
3.3.2. 依赖配置详解
3.3.3. 使用depends-on
3.3.4. 延迟初始化bean
3.3.5. 自动装配(autowire)协作者
3.3.6. 依赖检查
3.3.7. 方法注入
3.4. Bean的作用域
3.4.1. Singleton作用域
3.4.2. Prototype作用域
3.4.3. Singleton beans和prototype-bean的依赖
3.4.4. 其他作用域
3.4.5. 自定义作用域
3.5. 定制bean特性
3.5.1. 生命周期回调
3.5.2. 了解自己
3.6. bean定义的继承
3.7. 容器扩展点
3.7.1. 用BeanPostProcessor定制bean
3.7.2. 用BeanFactoryPostProcessor定制配置元数据
3.7.3. 使用FactoryBean定制实例化逻辑
3.8. The ApplicationContext
3.8.1. BeanFactory 还是 ApplicationContext?
3.8.2. 利用MessageSource实现国际化
3.8.3. 事件
3.8.4. 底层资源的访问
3.8.5. ApplicationContext在WEB应用中的实例化
3.9. 粘合代码和可怕的singleton
3.10. 以J2EE RAR文件的形式部署Spring ApplicationContext
3.11. 基于注解(Annotation-based)的配置
3.11.1. @Autowired
3.11.2. 基于注解的自动连接微调
3.11.3. CustomAutowireConfigurer
3.11.4. @Resource
3.11.5. @PostConstruct@PreDestroy
3.12. 对受管组件的Classpath扫描
3.12.1. @Component和更多典型化注解
3.12.2. 自动检测组件
3.12.3. 使用过滤器自定义扫描
3.12.4. 自动检测组件的命名
3.12.5. 为自动检测的组件提供一个作用域
3.12.6. 用注解提供限定符元数据
3.13. 注册一个LoadTimeWeaver

3.1. 简介

本章覆盖了Spring框架对控制反转(Inversion of Control,IoC)[1]理论的实现。

org.springframework.beansorg.springframework.context包 是Spring IoC容器的基础。BeanFactory 提供的高级配置机制,使得管理各种对象成为可能。 ApplicationContextBeanFactory的扩展,功能得到了进一步增强,比如更易 与Spring AOP集成、资源处理(国际化处理)、事件传递及各种不同应用层的context实现 (如针对web应用的WebApplicationContext)。

简而言之,BeanFactory提供了配制框架及基本功能,而 ApplicationContext 则增加了更多支持企业核心内容的功能。 ApplicationContext完全由BeanFactory扩展而来, 因而BeanFactory所具备的能力和行为也适用于ApplicationContext

本章分为两部份,第一部份讲解 BeanFactoryApplicationContext的基本原理, 而第二部份则针对ApplicationContext的功能进行讲解。



[1] 参见背景的相关内容