spring读取windows路径的配置文件
最近在搞web应用配置分离,将项目有关的配置分离到项目外面,然后通过路径读取该配置文件。发布到服务器上其实容易实现,因为linux文件的路径直接在web应用中输入就行了。但是之前我需要现在windows本地部署测试,也就是说需要将配置文件放到windows目录下面。
先看我代码中读取配置文件的地方。
public static final String APPLICATION_FILE_PATH =F:/WorkSpace/pufa/couple/appconfig/application.properties"; public static final String INTERFACEPARAM_FILE_PATH = "F:/WorkSpace/pufa/couple/appconfig/application.properties";
注意linux的路径符号和Window的路径符号是不同的,windows系统中文件路径用的是反斜杠“\”,而linux或unix系统中文件路径用的正斜杠即”/“。
但是java代码中路径直接写“\”的话,会报错。因为第一个斜杠会当做转意字符处理了,所以得用“\\”双斜杠代替,但是实际测试发现,当使用linux的路径分隔符号‘/’也是能成功的,java识别到对应的路径。所以在java中写windows路径一般用"/"或将"\"转义一下,就成了"\\"。
然后是spring和log4j的配置文件。
log的配置文件:
<property file="F:/WorkSpace/pufa/couple/appconfig/application.properties"></property>
这边直接用window的路径就行了,注意仍然用的反斜杠“/”。
然后是spring的路径配置:
<property name="location" value="file:F:/WorkSpace/pufa/couple/appconfig/application.properties" />
注意spring路径配置,需要在前面加上file:,然后其它路径配置和上面是一样的。
但是我在配置文件中尝试用“\”替换掉"/"也是能够顺利部署成功的。
综上所述,在本地Winds部署中,如果在java代码中配置路径的话,只能用“/”
或者使用“\\”,其它配置文件"/"或者"\"都可以。