自动装配与配置文件
Q:自动装配 是 如何与我们的配置文件相对应的?
上面提到,自动配置资源文件依赖于多个META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件
这个文件写了 所需要自动装配的类的全限定名
比如:
我们点进去,可以跳转到对应的类:
接下来,只需要按照 prefix 的规则,在我们的配置文件中写上相应的配置,便可以覆盖这里的默认值(基本类型默认值,null,或者,其他提供者手动指定的值)
配置文件:
除此以外,还有其他的引入方式,这里以Hikari
为例:
Hikari配置:
那么,这个配置又是以什么方式被识别的?
与其他在自己的jar
包有META-INF/%s.imports文件不同,Hikari的自动配置资源文件在spring-boot-auto
的jar
包下的import文件中:
我们点进去,可以跳转到对应的类:
可以看到有一个配置方法被@Configuration
注解标注,并且通过@Import
注解引入了DataSourceConfiguration.Hikari.class
进入DataSourceConfiguration.Hikari.class
,可以看到: