spring的后置处理器
EnvironmentPostProcessor
调用时机:spring conetxt refreshed之前,添加或者修改环境配置
作用:添加或者修改环境配置
BeanDefinitionRegistryPostProcessor
调用时机:beanDefinition阶段,可以将bean存入beanDefinitionMap中
作用:注册bean到IOC容器中
BeanFactoryPostProcessor
调用时机:在BeanFactory标准初始化之后调用,这时所有的bean定义已经保存加载到beanFactory,但是bean的实例还未创建
作用:来定制和修改BeanFactory的内容,如覆盖或添加bean属性,做增强
BeanPostProcessor
调用时机:在spring容器实例化bean之后,在执行bean的初始化方法前后,添加一些自己的处理逻辑
1)
//实例化、依赖注入完毕,在调用显示的初始化之前完成一些定制的初始化任务 Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException;
2)
//实例化、依赖注入、初始化完毕时执行 Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException;
作用:初始化bean属性值等
ImportBeanDefinitionRegistrar
动态自定义注册bean