Bean工厂的后置处理器,当BeanFactory准备好了之后(Bean初始化之前),会调用这个接口的PostProcessBeanFactory方法,经常用于新增BeanDefinition
前面几个顺序理一下:
ApplicationContextInitializer是在容器已经完成了基本初始化工作,但是在容器实例化任何bean之前调用
ApplicationContextInitializer是在BeanFactory完成容器已经加载bean定义(完整的bean定义),
但是在容器实例化任何bean之前调用
ApplicationListener是在在 Spring 容器实例化 bean 后,以及在发布特定的应用程序事件时执行。
总结:
执行顺序:ApplicationContextInitializer> ApplicationContextInitializer>ApplicationListener
有最早到最晚。