SpringBoot扩展接口- BeanFactoryPostProcessor后置处理器

发布时间:2022-07-05 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了SpringBoot扩展接口- BeanFactoryPostProcessor后置处理器脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

BeanFactoryPostPRocessor接口

对BeanFactory进行后置方法调用

触发时间: 

ApplicationPreparedEvent 上下文准备完成后

 refreshContext()方法中调用 invokeBeanFactoryPostProcessors(beanFactory)

 

BeanFactoryPostProcessor接口会被分组成 

BeanDefinITionRegistryPostProcessor 注册器和 BeanFactoryPostProcessor 规则处理器
BeanDefinitionRegistryPostProcessor : 注册器:
SharedMetadataReaderFactoryContextInitializer
configurationWarningsApplicationContextInitializer
ConfigurationClassPostProcessor(重点)

 

BeanFactoryPostProcessor  规则处理器:

ConfigFileApplicationListener # ProPErtySourceOrderingPostProcessor

 

先执行注册器的调用。
第一次调用注册器注册方法。
主要是  ConfigurationClassPostProcessor 类
调用 postProcessBeanDefinitionRegistry()方法,进行bean定义的扫描,注册到BeanFactory中
1、使用启动类作为入口
2、进行类扫描器扫描所有配置类 (只要有@Configuration、@component、@ComponentScan、@Import、
  @ImportResource和@Bean中的其中一个注解,就会将bean注册到beanfactory中)
 
第二次调用注册器方法
已经执行过的注册器不会再次执行
这里执行的注册器是从加载的配置类中获取的bean配置类。 BeanFactory中获取到类型为BeanDefinitionRegistryPostProcessor 的bean
 
执行bean注册工作。
比如在这里进行 mybatis的DAO接口bean定义扫描注册到beanfactory中。
 
第三次:最后一次将为调用过的注册器进行调用。(这里一般没有)
 
 
 
规则处理器方法调用 
BeanFactoryPostProcessor.postProcessBeanFactory()
 
 

 

脚本宝典总结

以上是脚本宝典为你收集整理的SpringBoot扩展接口- BeanFactoryPostProcessor后置处理器全部内容,希望文章能够帮你解决SpringBoot扩展接口- BeanFactoryPostProcessor后置处理器所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。