源码分析----springboot启动

 

 

 

1、AbstractApplicationContext#invokeBeanFactoryPostProcessors

  扫描类,生成beanDefintion对象到beanDefintionMap中,对象还没有实例化,当spring把类所对应的beanDefintion对象存到map之后,spring会调用程序员提供的bean工厂后置处理器

ConfigurationClassPostProcessor$BeanDefinitionRegistryPostProcessor#postProcessBeanDefinitionRegistry

  BeanDefinitionRegistryPostProcessor:他本身有一个需要实现方法,但因为继承了BeanFactoryPostProcessor接口,所以需要实现2个方法。分别是修改和添加bean定义

ConfigurationClassPostProcessor$BeanFactoryPostProcessor#postProcessBeanFactory

  BeanFactoryPostProcessor:需要实现一个方法。只能修改bean定义

程序员提供的BeanFactoryPostProcessor#postProcessBeanFactory

  可能没有(如果程序员没有提供自己的BeanFactoryPostProcessor)

 

posted @ 2021-01-11 12:36  小名的同学  阅读(46)  评论(0编辑  收藏  举报