SpringBoot自动配置原理
Posted Cooper_Xia
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot自动配置原理相关的知识,希望对你有一定的参考价值。
@SpringBootApplication
表示为springboot应用,其实就是一个配置类:
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(
excludeFilters = {@Filter(
type = FilterType.CUSTOM,
classes = {TypeExcludeFilter.class}
), @Filter(
type = FilterType.CUSTOM,
classes = {AutoConfigurationExcludeFilter.class}
)}
)
这个配置类的这三条注解完成配置:
- SpringBootConfiguration代表是个配置类,可以对application中的注解中的配置加入spring容器
- EnableAutoConfiguration 表示对application进行自动配置
- ComponentScan相当于spring 的xml中的包扫描配置,扫描包中的注解
如何自动配置
springboot会加载并运行application,然后生成一个SpringApplication对象
这个过程中有一个推断应用类型的方法,推断出是servlet
然后调用初始化方法,初始方法创建一个spring工厂实例用来生成spring的application
spring工厂会按照传入的字节码类型去查找配置文件,进行自动配置
以上是关于SpringBoot自动配置原理的主要内容,如果未能解决你的问题,请参考以下文章