java – 引用Spring属性文件使用路径相对于配置文件

前端之家收集整理的这篇文章主要介绍了java – 引用Spring属性文件使用路径相对于配置文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在将属性从我的 Spring配置文件中移动到单独的属性文件.这是包含在配置文件
<bean class="org.springframework.beans.factory.config.PropertyPlaceHolderConfigurer">
  <property name="location" value="file:properties/${CONFIG_MODE}/service.properties" />
</bean>

就此而言,属性文件的位置与服务器进程的当前工作目录相对.

这将创建一个必须从特定工作目录启动该进程的要求,甚至更糟的是允许(可以远程的)可能会选择一个完全不同的属性文件,例如,如果工作目录设置为旧版本的服务.

我想使用相对于包含配置文件的目录的路径引用属性文件.

看着FileSystemResource,似乎createRelative可能是我需要的,但我无法弄清楚如何在配置文件中使用它.

谢谢,

史蒂夫

解决方法

我不知道有这样做的方法.

但是,您可以执行的操作是从类路径加载属性文件

<bean class="org.springframework.beans.factory.config.PropertyPlaceHolderConfigurer">
  <property name="location" value="classpath:path/to/service.properties" />
</bean>

属性文件的类路径位置是一个更可预测的情况,只要您的类路径正确设置,它将会工作.

猜你在找的Java相关文章