1、作用:从classpath中搜索所有的META-INF/spring.factories配置文件
然后将其中key对应的配置项加载到spring容器中(前提是配置中开启了spring.boot.enableautoconfiguration=true[默认为true])
注意:spring.factories中配置的是配置类还是普通bean都纳入大spring容器中管理
2、其内部实现的关键点:
- ImportSelector该接口的返回值都会被纳入到spring容器中
- SpringFactoriesLoader可以从classpath中所有的META-INF/factories.properties中配置纳入spring容器管理
- spring.boot.enableautoconfiguration=ture的时候才启用autoConfigration,默认值为true
- @EnableAutoConfiguration可以进行配置排除,不纳入spring容器管理;排除的方式有两种:一种根据class(exclude)排除,另一种根据name(excludeName)排除
- spring-boot-autoconfigure包下的META-INF/factories.properties加载了很多配置