SpringBoot
2021-06-17 15:56:49 0 举报
AI智能生成
SpringBoot自动装配
作者其他创作
大纲/内容
SpringBoot
自动装配原理
@SpringBootApplication:SpringBoot应用
@SpringBootConfiguration:SpringBoot配置
@Configuration
@Component
@EnableAutoConfiguration:自动导入包配置
@AutoConfigurationPackage:自动配置包
@Import({Registrar.class}):自动注册包
@Import({AutoConfigurationImportSelector.class}):自动导入包的核心
AutoConfigurationImportSelector:自动导入选择器
getAutoConfigurationEntry():获得自动配置的实体
getCandidateConfigurations():获取候选的配置
参数(返回标注有EnableAutoConfiguration注解的类):protected Class<?> getSpringFactoriesLoaderFactoryClass() { return EnableAutoConfiguration.class; }
loadFactoryNames():获取所有的加载配置
其配置的自动导入并没有生效,需要导入对应的start才能生效spring-boot-autoconfigure-2.2.1.RELEASE.jarMETA-INFspring.factories
核心注解:@ConditionalOnXXX只有在其中的条件都满足时,才会生效
loadSpringFactories()
从资源中获取:classLoader.getResources(\"META-INF/spring.factories\")
从系统中获取:ClassLoader.getSystemResources(\"META-INF/spring.factories\")
从这些资源中遍历所有的元素(自动配置)
@ComponentScan:扫描包的位置及各种过滤条件
收藏
收藏
0 条评论
回复 删除
下一页