文章目录
- Spring Bean的生命周期实现方式
- 实例化
- 属性赋值
- 初始化
- 销毁
Spring Bean的生命周期实现方式
Spring Bean的生命周期决定了一个Bean的整个生命周期,它分为四个阶段:实例化、属性赋值、初始化和销毁。
实例化
实例化通过构造器实例化和工厂方法实例化两种方式实现;构造器实例化是指通过Java类的构造函数实例化Bean。在Spring中,构造函数可以是无参构造函数,也可以是有参构造函数。Spring通过利用Java反射机制,调用bean对应类的构造方法进行实例化。在XML文件中,可以使用标签的class属性指定要实例化的Bean类。当容器启动时,容器会根据class属性的全限定类名使用反射机制实例化Bean。在注解方式中,@Component、@Service、@Controller等注解都是用来标注Bean类,容器会根据这些注解的信息进行实例化。工厂方法实例化是指通过Java类的静态方法实例化Bean,实现方式类似于单例模式的实现方式。在Spring中,通过配置工厂方法的返回值和参数,实现Bean的实例化。
实例化前后的InstantiationAwareBeanPostProcessor接口是Spring框架中的一个扩展点,例如SmartInstantiationAwareBeanPostProce