java properties文件的使用

2014-11-24 07:25:43 · 作者: · 浏览: 0

经常看到java程序中带properties文件(包括log4j,junit的使用),作为一个java所知甚少的程序员,有必要搞清楚这个问题.

首先,这个文件经常是作为资源文件的,maven,sbt中资源文件一般还独立一个src/java/resource文件夹,资源文件一般是通过getResouce,getResourceAsStream(获取对应InputStream)获得.如:

Test.class.getResource("file3.txt")

Test.class.getResource("/file3.txt")

Test.class.getClassLoader.getResource("/file3.txt")

参数可以是相对路径和绝对路径,相对路径是在对应class文件(classpath)下找的,绝对路径则是顶层classloader那一层找的.

properties文件使用需要import java.util.Properties,如在scala shell中输入:

import java.util.Properties

val x = getClass.getResourceAsStream("/a.properties")

val prop = new Properties

prop.load(x)

prop.getProperty("a") ==> 返回null

prop.getProperty("IcisReport.contextPath") ==> 返回/IcisReport

对应的a.properties如:

# IcisReport的ip
IcisReport.server.ip=192.168.3.143
# IcisReport的端口
IcisReport.server.port=8080
# IcisReport的上下文路径
IcisReport.contextPath=/IcisReport


参考:

java resource路径总结:http://enetor.iteye.com/blog/1125189

http://www.cnblogs.com/panjun-Donet/archive/2009/07/17/1525597.html