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

自动装配与配置文件

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,可以看到:

相关推荐
程序员海军7 小时前
用了两年多 GPT,我最近开始换模型了,还折腾了个求职避坑 Agent
前端·人工智能·后端
码士集团小青7 小时前
SpringBoot 集成缓存性能之王 Caffeine
spring boot·后端·缓存
凤凰院凶涛QAQ8 小时前
《Java版数据结构 & 集合类剖析》Map & Set & 反射:“从哈希碰撞到红黑树转换,反射帮你扒开 HashMap 的桶数组看个究竟”
java·数据结构·算法
H.莓飛8 小时前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
wangchunyu1148 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
excel9 小时前
IndexNow:让搜索引擎更快发现网站更新的主动通知协议
前端·后端·架构
Json____9 小时前
用 FastAPI + Vue3 打造一套完整的在线考试系统:从组卷到阅卷的业务闭环实践
后端·node.js·fastapi·it学习·wwwoop.com
w_zero_one10 小时前
算法--模拟
java·数据结构·算法
小灰灰搞电子10 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
Javatutouhouduan10 小时前
阿里1658页Java面试题总结(含答案)
java·高并发·java面试·java面试题·后端开发·java程序员·java八股文