我有弹簧配置以下。我使用的是Spring 3和Windows OS。
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>file:/extprops/conf/usercred.properties</value>
</list>
</property>
<property name="ignoreUnresolvablePlaceholders" value="true"/>
</bean>
在上面的配置中,我正在尝试加载外部属性文件file:/extprops/conf/usercred.properties
并且它正在运行。这里我没有指定属性文件所在的驱动器位置。我是否需要在C
或D
驱动器等路径中指定驱动器信息?我是否需要将App服务器和属性文件保存在同一个驱动器中?
答案 0 :(得分:3)
如果您没有指定驱动器,它将使用当前工作目录中的驱动器,该驱动器是您在启动进程期间使用的驱动器。因此,它可行,但不可靠 - 如果您运行该过程,例如通过不同驱动器的链接,然后它可能无法正常工作。所以,也要指定驱动器,如下所示:
file:///C:/extprops/conf/usercred.properties
答案 1 :(得分:0)
此外,更好/标准的方法是在系统中创建一个环境变量,其值将包含propery文件的路径。
然后在配置文件中,您可以写为:
file:${your.prop.folder}/myproperties.properties.
这可以在您的属性文件位置发生更改时节省工作量。
答案 2 :(得分:0)
我认为属性文件应该在classpath上,并且它是正确的位置...因为它独立于路径,所以如果操作系统是Windows或Linux,它不会有任何问题。