Spring在属性中包含相对路径

时间:2018-10-29 15:55:40

标签: java spring spring-boot spring-properties

我正在努力做到这一点,以便在config/app.properties中可以拥有:

myfile.location=./myfile

其中.相对于所述属性文件。这可能吗 ?我尝试过:

resourceLoader.getResource(appConfig.getMyFileLocation());

其中的resourceLoader和appConfig是自动连接的,但无法使用。

2 个答案:

答案 0 :(得分:0)

Java属性是键值对。因此,当您指定myfile.location=./myfile时,这意味着appConfig.getMyFileLocation()将返回'./myfile',这不是正确的位置。

作为一种解决方法,您可以获取属性文件的位置,然后将其与相对位置一起使用以找到绝对路径。

File propertyFileDirectory = .... // get the property file directory
String myfilePath = appConfig.getMyFileLocation();
File file = new File(propertyFileDirectory, myfilePath);

答案 1 :(得分:0)

我通常会这样引用我的文件:

myfile.location=classpath:myfile

myfile与属性文件位于同一位置。