自动配置原理如下

(1)进入@SpringBootApplication

springboot自动装配

(2)SpringBootApplication接口有两个注解@SpringBootConfiguration和@EnableAutoConfiguration

springboot自动装配

(3)其中SpringBootConfiguration接口是包含@Configuration,所以会将启动类加载到ioc容器

springboot自动装配

(4)其次EnableAutoConfiguration接口引入AutoConfigurationImportSelector类

springboot自动装配

(5)AutoConfigurationImportSelector当中有一个方法getCandidateConfigurations

springboot自动装配

(6)该方法调用SpringFactoriesLoader.loadFactoryNames

springboot自动装配

(7)cloadFactoryNames中loadSpringFactories调用下面的loadSpringFactories,该方法中会加载META-INF/spring.factories文件

springboot自动装配

springboot自动装配

(8)META-INF/spring.factories文件位置

springboot自动装配
springboot实现自动配置原理就先讲到这里

相关文章: