spring - 为什么要在 application.properties 中定义属性的变量值

spring - why define variable values of properties in application.properties

我想了解 spring

中的以下 application.properties 语法
some-api:
  url: ${variable.url:http://localhost:8080}

我知道要获取上面的值我们使用(例如)

@Value("${some-api.url}")
private String url;

当我用 some-api.url 引用它时声明 ${variable.url:VALUE} 有什么意义?你在哪里使用它?

你也可以在 pom.xml 中调用这个值吗?

在您的示例属性文件中,您指的是另一个 属性,这就是您的 application.yml 的样子

variable:
  url: http://host

some-api:
  url: ${variable.url:http://localhost:8080}

:之后的值是variable.url未定义时的默认值。

also can you call this value in pom.xml ?

不,您需要一些可以读取您的属性文件的 Maven 插件才能执行此操作。