应用程序启动步骤
本附录的这一部分列出了核心容器中已实现的 StartupSteps
。
注意
每个启动步骤的名称和详细信息不是公共合同的一部分,并且可能会发生变化;这被视为核心容器的实现细节,将遵循其行为的变化。
表 1. 核心容器中定义的应用程序启动步骤
名称 | 描述 | 标签 |
---|---|---|
spring.beans.instantiate | Bean 及其依赖项的实例化。 | beanName Bean 的名称,beanType 注入点所需的类型。 |
spring.beans.smart-initialize | SmartInitializingSingleton Bean 的初始化。 | beanName Bean 的名称。 |
spring.context.annotated-bean-reader.create | 创建 AnnotatedBeanDefinitionReader 。 | |
spring.context.base-packages.scan | 扫描基础包。 | packages 要扫描的基础包数组。 |
spring.context.beans.post-process | Bean 后处理阶段。 | |
spring.context.bean-factory.post-process | 调用 BeanFactoryPostProcessor Bean。 | postProcessor 当前的后处理器。 |
spring.context.beandef-registry.post-process | 调用 BeanDefinitionRegistryPostProcessor Bean。 | postProcessor 当前的后处理器。 |
spring.context.component-classes.register | 通过 AnnotationConfigApplicationContext#register 注册组件类。 | classes 要注册的给定类数组。 |
spring.context.config-classes.enhance | 使用 CGLIB 代理增强配置类。 | classCount 增强类的数量。 |
spring.context.config-classes.parse | 使用 ConfigurationClassPostProcessor 解析配置类的阶段。 | classCount 处理的类的数量。 |
spring.context.refresh | 应用上下文刷新阶段。 |