【发布时间】:2022-07-10 02:16:34
【问题描述】:
有一个 Java SpringBoot 应用程序,其中包含一个配置所有属性的 application.yaml 文件。由于我们使用不同的环境,一些字段被配置为从 deployment.yaml 文件中读取,并且这些字段的值会发生变化。但是我不想定义一个字段,如果它存在,它将考虑deployment.yaml文件中的值,否则它应该采用给定的默认值。
类似这样的:
root:
some-sub-level:
some-key: ${VALUE_FROM_DEPLOYMENT_YAML:${default.level.value}}
default:
level:
value: some-default-value
我尝试了几种方法,但都没有成功。它采用空白值,因为 VALUE_FROM_DEPLOYMENT_YAML 在一个特定环境中将为空。
PS:我知道在 Java 代码中添加默认值,例如 @Value("${value.from.application.yaml:"some default value"},但我对此不感兴趣。要求不是在 Java 代码中阅读此内容,但它将是 Azure Application Insight 的配置。
任何人都可以帮助我这里缺少什么
【问题讨论】:
标签: java spring-boot azure yaml app.yaml