本文介绍了在Spring application.properties文件中使用表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

表达式可以在Spring application.properties文件中用作右侧值吗?

Can expressions be used as a right-hand-side value in a Spring application.properties file?

例如,如下所示:

logging.level.com.acme=#{'${MY_RUN_ENV}'=='PROD'?'WARN':'DEBUG'}

特别是,有效.但是,我想知道我是否可以做一些与预期的事情类似的事情

That, specifically, does not work. But, I'm wondering if I can do something similar to what's intended there

推荐答案

不,您不能在属性文件中使用SpEL.

No you can not use SpEL within properties files.

不过,您可以在属性文件中使用占位符,例如:

app.name=MyApp
app.description=${app.name} is a Spring Boot application

对于您的用例,您应该查看特定于配置文件的配置机制.

For your use case, you should look at the profile-specific configuration mechanism.

允许您根据环境配置文件加载不同的配置.

Which allows you to load different config based on an environment profile.

这篇关于在Spring application.properties文件中使用表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 23:32