我正在学习Spring Boot,并遇到了外部化配置。可以在应用程序中使用application.properties文件中定义的属性值,以使用@Value
来获取这些值。
我的application.properties文件内容-
car.bmw.name=BMW M1
我正在其中一个文件中执行此操作,从而在构造函数中使用此属性值-
public BMWCar(@Value("${car.bmw.name}") String carName) {
// some code here
}
工作正常,没有问题。但是,即使我做
@Value("${car.bmw.name:SOMEJUNKNAME}"
在构造函数中,正在使用属性的正确正确值(BMW M1)。
那么这是如何工作的呢? ...name
之后和@Value
中使用的属性名称中的所有内容都会被忽略吗?我的理解是,如果未正确提及占位符,则不应获取属性值。