表达式可以用作Spring application.properties文件中的右侧值吗?
例如,如下所示:
logging.level.com.acme=#{'${MY_RUN_ENV}'=='PROD'?'WARN':'DEBUG'}
也就是说,具体地说,也 不能 正常工作。但是,我想知道我是否可以做一些与预期的类似的事情
不,您不能在属性文件中使用SpEL。
最后,尽管您可以在@Value中编写SpEL表达式,但不会从Application属性文件中处理此类表达式。
但是,您可以在属性文件中使用占位符,例如:
app.name=MyApp app.description=${app.name} is a Spring Boot application
对于您的用例,您应该查看特定于配置文件的配置机制。
它允许您根据环境配置文件加载不同的配置。