个人总结
AnnotationConfigApplicationContext的构造方法,进入this方法中,在实例化BeanDefinitionReader的时候会注册很多用于解析注解的Bean定义放入Bean定义集合中,然后走reader.register(annotatedClasses)方法将配置类(带有类似@Configuration注解的类)注册进Bean定义集合中,此时配置类还没有解析成Bean定义。然后会在refresh()方法中调用invokeBeanFactoryPostProcessors()方法去调用我们的Bean工厂后置处理器并实例化(在调用我们的后置处理器时会从Bean定义集合中筛选出后置处理器),然后调用实现了后置处理器类的一个方法去解析我们的Bean定义,在该方法中首先找到我们的配置类然后对其进行解析,对配置类上面的注解进行解析(@Configuration @Compontent @Service @ComponentScan(“xxx”))(例如@ComponetScan会对里面的路劲进行解析,找到路径下的所有配置类解析成Bean定义)总之就是找到所有的配置类解析成Bean定义
内置后置PostProcess处理器深度讲解
最新推荐文章于 2023-07-11 10:56:09 发布
关键词由CSDN通过智能技术生成