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