[英]application.yaml file setting field with OR condition (Providing default value)
有一個 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 在一個特定環境中將是 null。
PS:我知道在 Java 代碼中添加默認值,例如@Value("${value.from.application.yaml:"some default value"}
,但我對此不感興趣。要求不是在 Java 代碼中閱讀此內容,但它將是 Azure Application Insight 的配置。
誰能幫我我在這里想念的東西
根據這個答案,它支持這種稱為占位符屬性的表示法:
spring:
profiles:
active: ${APP_PROFILE:test}
# ... #
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.