Spring @Configuration 注解解析原理

前言

​        @Configuration 注解是 Spring 3.0 版本引入的新特性(目前版本 6.0.11),它用于将一个类标记为配置类,通过配置类可以定义和组装 Spring Bean。

Spring @Configuration 注解解析原理_第1张图片

一般来说注解都会有相应的解析器,@Configuration 注解靠 ConfigurationClassParser 来解析,时机是在 BeanFactory 的后处理阶段(ConfigurationClassPostProcessor),大致流程如下:

Spring @Configuration 注解解析原理_第2张图片

Spring @Configuration 注解解析原理

        从入口开始,Spring 启动应用时会创建 AnnotationConfigApplicationContext (注解配置应用上下文)实例,下图:

Spring @Configuration 注解解析原理_第3张图片

Spring @Configuration 注解解析原理_第4张图片

初始化 AnnotationConfigApplicationContext 实例时会注册 ConfigurationClassPostProcessor,ConfigurationClassPostProcessor 实现了 BeanFactoryPostProcessor 方法,所以在 Spring 应用上下文启动时 BeanFactory 后处理时触发解析流程:

Spring @Configuration 注解解析原理_第5张图片

你可能感兴趣的:(#,Spring,Java,Framework,spring,Configuration,注解)