BeanPostProcessor及其子类,各种常用Aware接口,DisposableBean,InitializingBean,@PostConstruct,@PreDestroy执行顺序

先上结论 

1-InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation...
2-SmartInstantiationAwareBeanPostProcessor.determineCandidateConstructors...
Soldier 构造方法...
3-MergedBeanDefinitionPostProcessor.postProcessMergedBeanDefinition...
4-InstantiationAwareBeanPostProcessor.postProcessAfterInstantiation...
5-InstantiationAwareBeanPostProcessor.postProcessProperties...
BeanNameAware.setBeanName:soldier...
BeanFactoryAware.setBeanFactory...
ResourceLoaderAware.setResourceLoader...
ApplicationEventPublisherAware.setApplicationEventPublisher...
MessageSourceAware.setMessageSource...
ApplicationContextAware.setApplicationContext.......
@PostConstruct
6-BeanPostProcessor.postProcessBeforeInitialization...
InitializingBean.afterPropertiesSet...
7-BeanPostProcessor.postProcessAfterInitialization...
2020-01-04 18:25:05.897 DEBUG org.springframework.context.support.AbstractApplicationContext 1002 doClose - Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@de3a06f, started on Sat Jan 04 18:25:05 CST 2020
@PreDestroy...
8-DestructionAwareBeanPostProcessor.postProcessBeforeDestruction...
DisposableBean.destroy...

测试代码如下

@Component
public class Soldier implements ApplicationContextAware, DisposableBean, BeanNameAware
        , BeanFactoryAware, MessageSourceAware, ApplicationEventPu
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值