springboot中yml、yaml、properties加载顺序

前言

Springboot对于文件配置加载,有着明确的配置加载顺序

配置文件加载顺序

对于yamlymlproperties配置文件,优先级低的配置会被先加载,所以优先级高的配置会覆盖优先级低的配置

scss 复制代码
properties(最高)> yml > yaml(最低)

顺序验证

1、配置加载

kotlin 复制代码
@Slf4j
@RestController
public class IndexController {

    @Value("${hello.data}")
    private String data;


    @GetMapping("/hello")
    public String hello() {
        log.info("数据为:{{}}", Thread.currentThread());
        return data;
    }
}

配置application.yaml配置文件

yaml 复制代码
hello:
  data: test1

如下图所示

访问

bash 复制代码
http://ip:端口/hello

结果为

增加配置application.yml配置文件

yaml 复制代码
hello:
  data: test2

如下图所示

输出结果为

增加配置application.properties配置文件

配置内容为

ini 复制代码
hello.data=aaa

输出结果为

总结

同一级目录下加载顺序验证:

properties的优先级高(当只有properties,yml,yaml)

相关推荐
moxiaoran57535 分钟前
Go语言的错误处理
开发语言·后端·golang
编程小风筝19 分钟前
Spring 框架如何整合Redis缓存中间件?
redis·spring·缓存
Coder_Boy_2 小时前
基于SpringAI的在线考试系统-DDD业务领域模块设计思路
java·数据库·人工智能·spring boot·ddd
Voyager_45 小时前
StringRedisTemplate 和 RedisTemplate 的区别是什么?
java·spring boot
杏花春雨江南5 小时前
JavaWeb企业级项目实战:从SSH到SSM演进 + MQ/Redis/ES高可用架构落地全复盘(实战干货+避坑指南)
java·jvm·spring
lang201509285 小时前
Jackson 1.x到2.x的演进与Spring集成
数据库·sql·spring
短剑重铸之日6 小时前
《7天学会Redis》特别篇: Redis分布式锁
java·redis·分布式·后端·缓存·redission·看门狗机制
小北方城市网6 小时前
SpringBoot 全局异常处理与接口规范实战:打造健壮可维护接口
java·spring boot·redis·后端·python·spring·缓存
独自破碎E6 小时前
什么是Spring IOC
java·spring·rpc
Chan166 小时前
【 微服务SpringCloud | 方案设计 】
java·spring boot·微服务·云原生·架构·intellij-idea