在Spring Boot的application.properties中使用系统变量

时间:2019-06-12 16:18:11

标签: java macos spring-boot

我的application.property文件中有此属性

logfile.dir=/Users/Nunito/logs/icrypts/

我想知道是否可以做类似的事情:

logfile.dir=/Users/{userName}/logs/icrypts/

2 个答案:

答案 0 :(得分:1)

有可能。只需使用${userName}

答案 1 :(得分:0)

当然,您可以从属性文件中读取环境变量。提供的用户名在您要在其上执行代码的系统中配置为环境变量。

只需替换

:logfile.dir = / Users / Nunito / logs / icrypts /

具有: logfile.dir = / Users / $ {userName} / logs / icrypts /

您还可以使用以下任何一种方式读取属性文件。

@Value("${username}")
private String username;

您还可以使用 SPRING_APPLICATION_JSON

在应用程序启动时,Spring Boot将寻找一个名为SPRING_APPLICATION_JSON的环境变量。它可以用于使用内联JSON提供一组应用程序属性。例如,您可以按如下所示设置ec2.public.url属性。

您可以从这里参考样本, https://github.com/indrekots/spring-boot-envvariables