springboot自动装配过程理解
//
蓝色为项目启动后自动装配的步骤,红色为项目启动后run方法的执行步骤。
自动装配解释:
- 从@SpringBootApplication进入到@EnableAutoConfiguration中
- 在选择器类中,getCandidateConfigurations方法下的SpringFactoriesLoader类
- SpringFactoriesLoader类下的loadSpringFactories方法
- 在这里明确指出会在启动时加载META-INF/spring.factories 得出springboot启动时会加载spring.factories中的大量自动配置类并加载进properties
- 在spring.factories中进入一个自动配置类里面查看源码
- 这些自动配置类由@CondationalOnMissionBean等注解判断是否注入工厂
- 在application.yml中可以自定义相关配置
- 即只要在maven中导入相关依赖,spring.factories中可以通过判断注解将对应的自动配置类注入工厂,springboot就可以拿到配置类的属性,从而yml中就可以设置。属性和对应类的属性一一对应。
