BeanPostProcessor的postProcessAfterInitialization与InitializingBean的afterPropertiesSet,哪个先执行
时间: 2023-06-12 14:06:56 浏览: 115
Spring Annotaion Support详细介绍及简单实例
BeanPostProcessor的postProcessAfterInitialization方法会在InitializingBean的afterPropertiesSet方法之后执行。
具体的执行顺序如下:
1. 实例化Bean
2. 调用BeanPostProcessor的postProcessBeforeInitialization方法
3. 调用InitializingBean的afterPropertiesSet方法
4. 调用自定义的init方法(如果有)
5. 调用BeanPostProcessor的postProcessAfterInitialization方法
因此,如果在Bean实例化后需要对Bean进行一些初始化操作,您可以实现InitializingBean接口的afterPropertiesSet方法或定义自定义的init方法。如果您需要对初始化后的Bean进行处理,则可以实现BeanPostProcessor接口,并覆盖postProcessAfterInitialization方法。
阅读全文