springboot中用户主目录的特定于环境的属性

时间:2016-12-07 18:19:56

标签: spring spring-mvc spring-boot

我正在开发一个spring boot应用程序,我必须在用户主文件夹中设置"'" + studentSectionId.Item1.ToString() + "-" + + studentSectionId.Item2.ToString() "'" ...

我为谷歌挖掘相同的&发现我们可以在资源下放置不同的属性文件(开发,测试,生产),然后我们必须使用Environment specific properties告诉spring boot我们要使用哪个环境。

但是,我的要求完全不同。我将把一个文件放在我的系统和用户家中。想要读取该文件的属性。我该怎么做,需要指导。

非常感谢助手。

3 个答案:

答案 0 :(得分:2)

来自Spring Boot docs

  

您还可以使用spring.config.location环境属性(以逗号分隔的目录位置列表或文件路径)来引用显式位置。

当文档继续进行状态时,必须在命令行或环境变量中指定。

$ java -jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

答案 1 :(得分:2)

我们使用EnvironmentPostProcessor在Devoxx演示文稿中解释该用例,有关详细信息,请参阅this section of the presentation。您还可以find the code sample online

答案 2 :(得分:0)

好吧,在您的情况下,您似乎不需要环境变量。对于生产服务器,您的属性文件将保留在暂存机中,它也停留在同一个地方。因此,无论您在何处部署,都可以选择。 IMO你不需要设置环境,你只需要将属性文件指向 现在要定义此路径,您有两种方法.. - 您可以在代码中放置静态路径 - 您可以像Property_Path一样设置环境变量,并在spring boot application中读取它。

但是如果你想提前一步,你可以使用spring cloud配置管理器,通过传递应用程序+配置文件名称,CM可以直接从git或文件系统中获取属性文件...