spring的生命周期

Spring框架中的Bean生命周期通常包含以下7个步骤:
1、实例化:当容器接收到Bean定义时,容器就会实例化Bean对象。这通常是通过Java反射机制完成的。

2、属性赋值:当Bean对象实例化后,容器就会将Bean的属性设置为配置文件或注解中提供的值,这通过依赖注入(Dependency Injection)完成。

3、BeanPostProcessor的前置处理(postProcessBeforeInitialization):在Bean进行属性赋值后,如果该Bean定义了BeanPostProcessor接口,那么容器会首先调用所有实现了BeanPostProcessor接口的类的postProcessBeforeInitialization()方法。这个方法调用是在Bean的初始化前执行的,可以在这个方法中对Bean进行处理和修改,比如实现AOP功能、BeanValidation校验等。

4、初始化:在属性赋值和BeanPostProcessor前置处理之后,容器会调用Bean的初始化方法,这个初始化方法可以是自定义的初始化方法(通过@Bean(init-method)或@PostConstruct注解声明)或者实现了InitializingBean接口的afterPropertiesSet()方法。

5、BeanPostProcessor的后置处理(postProcessAfterInitialization):在Bean的初始化后,如果该Bean定义了BeanPostProcessor接口,那么容器会调用所有实现了BeanPostProcessor接口的类的postProcessAfterInitialization()方法。这个方法调用是在Bean的初始化后执行的,可以在这个方法中进行一些Bean的后续处理和修改。

6、使用: 在初始化之后,我们可以使用该Bean了。这就是Bean的使用期。

7、销毁:当Bean不再需要的时候,容器会调用其销毁方法。这个销毁方法可以是自定义的销毁方法(通过@Bean(destroy-method)或@PreDestroy注解声明)或者实现了DisposableBean接口的destroy()方法。

总结:Spring的Bean生命周期可以简单地理解为实例化、属性赋值、初始化、使用和销毁这五个阶段,其中属性赋值和初始化包含了前置处理和后置处理的功能,对Bean进行了进一步的修改和处理,让我们可以通过简单的配置来实现复杂的功能。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值