一文读懂SpringBoot读取application配置文件流程

自动装配与配置文件

Q:自动装配 是 如何与我们的配置文件相对应的?

上面提到,自动配置资源文件依赖于多个META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件

这个文件写了 所需要自动装配的类的全限定名

比如:

我们点进去,可以跳转到对应的类:

接下来,只需要按照 prefix 的规则,在我们的配置文件中写上相应的配置,便可以覆盖这里的默认值(基本类型默认值,null,或者,其他提供者手动指定的值)

配置文件:

除此以外,还有其他的引入方式,这里以Hikari为例:

Hikari配置:

那么,这个配置又是以什么方式被识别的?

与其他在自己的jar包有META-INF/%s.imports文件不同,Hikari的自动配置资源文件在spring-boot-autojar包下的import文件中:

我们点进去,可以跳转到对应的类:

可以看到有一个配置方法被@Configuration注解标注,并且通过@Import注解引入了DataSourceConfiguration.Hikari.class

进入DataSourceConfiguration.Hikari.class,可以看到:

相关推荐
白衣鸽子几秒前
ArrayUtils:Java数组操作的瑞士军刀
后端·开源·设计
凌波粒2 分钟前
SpringMVC基础教程(3)--SSM框架整合
java·sql·spring·intellij-idea·mybatis
舒一笑7 分钟前
PandaCoder:我的个人开发者工具进化之路
后端·程序员·intellij idea
2021_fc18 分钟前
分布式应用可观测全链路追踪技术
java
数据的世界0119 分钟前
JAVA和C#的语法对比
java·windows·c#
渡我白衣24 分钟前
深入理解 OverlayFS:用分层的方式重新组织 Linux 文件系统
android·java·linux·运维·服务器·开发语言·人工智能
IT_陈寒25 分钟前
Vue 3.4 正式发布:5个不可错过的性能优化与Composition API新特性
前端·人工智能·后端
百***926540 分钟前
java进阶1——JVM
java·开发语言·jvm
虫师c1 小时前
字节码(Bytecode)深度解析:跨平台运行的魔法基石
java·jvm·java虚拟机·跨平台·字节码
q***72191 小时前
Spring Boot环境配置
java·spring boot·后端