Spring Boot application.yaml中多个默认环境变量的语法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot application.yaml中多个默认环境变量的语法相关的知识,希望对你有一定的参考价值。
这是Spring Boot application.yaml中多个默认环境变量的正确语法吗?
springframework: ${LOG_LEVEL_1:${LOG_LEVEL_2:WARN}}
我想要的行为是:
- 如果设置,请使用LOG_LEVEL_1
- 如果未设置LOG_LEVEL_1,则使用LOG_LEVEL_2。
- 如果未设置LOG_LEVEL_2,则使用WARN。
但是,当未设置LOG_LEVEL_1时,未应用LOG_LEVEL_2。
我在Spring文档中找不到对此语法的任何引用。
答案
无论是yml还是属性,Spring都允许我们在一行中使用多个环境变量:
yml
spring:
datasource:
driver-class-name: ${JDBC_DATASOURCE_DRIVER_CLASS_NAME}
url: jdbc:oracle:thin:@${DATABASE_HOST}:1521:${DATABASE_SID}
属性
spring.datasource.driver-class-name = ${JDBC_DATASOURCE_DRIVER_CLASS_NAME}
spring.datasource.url = jdbc:oracle:thin:@${DATABASE_HOST}:1521:${DATABASE_SID}
以上是关于Spring Boot application.yaml中多个默认环境变量的语法的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Spring Boot 应用程序 pom 同时需要 spring-boot-starter-parent 和 spring-boot-starter-web?
《02.Spring Boot连载:Spring Boot实战.Spring Boot核心原理剖析》