springboot启动类执行流程
2022-05-19 14:29:39 0 举报
AI智能生成
springboot启动类执行流程
作者其他创作
大纲/内容
SpringBootApplication
@SpringBootConfiguration
@Configuration 说明是一个组件
@Component
@EnableAutoConfiguration 自动导入包
@AutoConfigurationPackage
@Import(AutoConfigurationPackages.Registrar.class) 包的自动注册器(和自动扫描包是连起来的)
@Import(AutoConfigurationImportSelector.class) 自动导入包的核心
AutoConfigurationImportSelector自动导入选择器
getAutoConfigurationEntry获得自动配置的实体
getCandidateConfigurations获取候选的配置
protected Class<?> getSpringFactoriesLoaderFactoryClass() {
return EnableAutoConfiguration.class;
}标注了EnableAutoConfiguration的注解的类,,,,,就是获取主启动类
return EnableAutoConfiguration.class;
}标注了EnableAutoConfiguration的注解的类,,,,,就是获取主启动类
public static List<String> loadFactoryNames()
获取所有的加载配置
获取所有的加载配置
loadSpringFactories(classLoaderToUse)
classLoader.getResources("META-INF/spring.factories");获取资源 项目资源
spring-boot-autoconfigure-2.6.7.jar
META-INF
spring.factories 所有的自动配置都在这里 为什么这么多的配置没有生效,,,需要导入对应的 start才能生效
核心注解@Conditionalxxx满足里面的条件才会生效
子主题
从这里自动遍历了所有的配置,遍历完成之后封装了一个properties
ComponentScan 扫描当前主启动类同级扫描包
收藏
0 条评论
下一页