Import相关
注解嵌套关系 @SpringBootApplication -> @EnableAutoConfiguration注解 -> @Import({AutoConfigurationImportSelector.class})Import会将selectImports方法返回的所有全路径限定类名都会被spring扫描AutoConfigurationImportSelector相关核心方法调用链 selectImports -> getAutoConfigurationEntry -> getCandidateConfigurations -> loadSpringFactories将扫描classpath下面类路径为META-INF/spring.factories的所有文件(包括jar包),提取出key为org.springframework.boot.autoconfigure.EnableAutoConfiguration的所有数据。ConditionalOnClass注解官方组件一般都被ConditionalOnClass注解修饰,这是由于官方组件factories文件都不和jar包放一起。它表示标记的类存在时才会被spring装配,即导入了目标jar包时才会被spring装配
springboot的自动装配原理
最新推荐文章于 2024-06-07 16:18:42 发布