SpringBoot 配置-自动配置原理(学习笔记12)

配置文件可以配置的属性参照,访问下在面的地址去查询:

https://docs.spring.io/spring-boot/docs/2.0.1.RELEASE/reference/htmlsingle/#common-application-properties

SpringBoot 配置-自动配置原理(学习笔记12)_第1张图片


自动配置原理:

1、SpringBoot启动的时候,加载主配置类,开启了自动配置功能 @EnableAutoConfiguration 。

SpringBoot 配置-自动配置原理(学习笔记12)_第2张图片

@SpringBootApplication是一个组合注解,它包含 @EnableAutoConfiguration 注解

SpringBoot 配置-自动配置原理(学习笔记12)_第3张图片

2、@EnableAutoConfiguration 注解作用:

SpringBoot 配置-自动配置原理(学习笔记12)_第4张图片

主函数通过 @EnableAutoConfiguration 注解,利用其内的 @Import 方法导入利AutoConfigurationImportSelector.class,完成 spring.factories 文件的扫描,从而加载配置。

SpringBoot 配置-自动配置原理(学习笔记12)_第5张图片


AutoConfigurationImportSelector类,其中核心方法 selectImports(),从带有 @Configuration 注解的类中选择并返回合适的类名数组,将其导入Spring容器。selectImports() 就是导入自动配置的地方。

List configurations = this.getCandidateConfigurations(annotationMetadata, attributes);

这一行代码是关键(上图红框所示),其作用是获取类名列表,其代码如下:


SpringBoot 配置-自动配置原理(学习笔记12)_第6张图片

SpringBoot 配置-自动配置原理(学习笔记12)_第7张图片


感谢--尚硅谷


你可能感兴趣的:(SpringBoot 配置-自动配置原理(学习笔记12))