refresh()中的invokeBeanFactoryPostProcessors(beanFactory)
invokeBeanFactoryPostProcessors(),实例化并且调用所有已经注册了的beanFactoryPostProcessor,遵循指明的顺序
PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(),获取到当前应用程序上下文的beanFactoryPostProcessors变量的值,并且实例化调用执行所有已经注册的beanFactoryPostProcessor,通过getBeanFactoryPostProcessors()来获取已经注册的BFPP
invokeBeanFactoryPostProcessors()执行流程:
外部集合: getBeanFactoryPostProcessors()获取已经注册的BFPP
PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(beanFactory, getBeanFactoryPostProcessors())
子类:BeanDefinitionRegistryPostProcessor增强的是BeanDefinition,自己有postProcessBeanDefinitionRegistry()方法,也有父类的postProcessBeanFactory()方法
父类:BeanFactoryPostProcessor增强的是BeanFactory里面所有的对象,postProcessBeanFactory()方法