1.首先在主启动类进入注解
2.从@SpringBootApplication进入到@EnableAutoConfiguration中
3.里面有import注解(选择器)
4.选择器类中的getCandidateConfigurations方法下的SpringFactoriesLoader类
5.META-INF/spring.factories里面有大量自动配置类
6.所以springboot启动时会加载spring.factories中的大量自动配置类并加载进properties
7.然后进入一个配置类,并不是所有的自动配置类都被使用,他有一个注解进行判断,只有引入了相关依赖,才可以将自动配置的类注入工厂,供springboot使用