SpringBoot自动配置原理
2022-07-06 21:30:42 7 举报
SpringBoot自动配置原理
作者其他创作
大纲/内容
loadFactoryNames
process
getSpringFactoriesLoaderFactoryClass()
@SpringBootApplication入口
通过读取所有jar包和类路径中的\"META-INF/spring.factories文件获取自动加载项
需要返回一个实现了DeferredImportSelector.Group接口的类
在getOrDefault方法中通过EnableAutoConfiguration进行过滤(获得key为EnableAutoConfiguration)的list集合
loadSpringFactories
getConfigurationClassFilter().filter(configurations)根据pom中添加的stater最终过滤出所需要的配置类
org.springframework.boot.autoconfigure.EnableAutoConfiguration
SpringBoot自动配置流程图
调用getAutoConfigurationEntry获取自动配置条目
AutoConfigurationImportSelector implements DeferredImportSelector
getCandidateConfigurations
AutoConfigurationGroup
factoryTypeName
有没有实现getImportGroup方法
NO
DeferredImportSelector工作原理
以这个完整类进行过滤,获取所有的自动配置类
Group.selectImports
1
@Import
2
收藏
收藏
0 条评论
下一页