java程序设计开发,设计思想Spring开源框架-IOC与AOP-BeanFactory学习笔记,BeanFactory 是 Spring 框架中最基础的 IoC 容器接口,负责管理
Java 程序设计开发:Spring 框架 - IOC 核心容器 BeanFactory 学习笔记
一、BeanFactory 核心概念与定位
定义:
- BeanFactory 是 Spring 框架中最基础的 IoC 容器接口,负责管理 Bean 的创建、配置和生命周期,是实现控制反转(IoC)的核心机制。
- 所有高级容器(如
ApplicationContext
)均继承自BeanFactory
,并扩展了更多企业级功能(如 AOP 支持、国际化、事件机制等)。
核心作用:
- Bean 的注册与管理:通过
BeanDefinition
描述 Bean 的配置(类名、依赖、作用域等),并创建 Bean 实例。 - 依赖注入:自动解析 Bean 的依赖关系,通过构造器、Setter 方法或字段注入依赖对象。
- 生命周期管理:控制 Bean 的初始化、销毁,支持自定义初始化和销毁方法。
二、BeanFactory 体系结构与核心接口
1. 接口继承关系
BeanFactory
├─ HierarchicalBeanFactory (支持父子容器层级)
├─ ListableBeanFactory (支持按类型获取多个Bean)
├─ ConfigurableBeanFactory (可配置的工厂,如设置父容器、作用域)
└─ ApplicationContext (高级容器,扩展功能)
2. 常用实现类
3. BeanDefinition:Bean 的元数据
- 作用:描述 Bean 的配置信息(类名、构造参数、属性值、作用域、初始化方法等)。
- 创建方式:
- XML 配置:
<bean id="userService" class="com.example.UserService" />
- 注解配置:
@Component
、@Bean
等注解自动生成BeanDefinition
。 - 编程式:手动创建
BeanDefinition
并注册到BeanFactory
。
- XML 配置: