Java中配置文件-xx.properties 内容是以键值对的形式存储 不带分号,比如,在org/zhe/properties这个包下有一个commom.properties文件,内容如下:
name=zhe
age=22
要用到java.util.Properties这个类
Properties
类表示了一个持久的属性集。Properties
可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。
代码如下
package org.zhe.properties;//注意在这个包下
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class LoadProperty {
public static void main(String args[]){
//这里需要用到Class.getResourceAsStream或者Classloader.Class.getResourceAsStream
//两者不同之处在于两者读取资源的路径不同
InputStream in = LoadProperty.class.getResourceAsStream("/org/zhe/properties/common.properties");
Properties prop = new Properties();
try {
prop.load(in);
//Properties类的一个方法public void list(PrintStream out)
prop.list(System.out);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(prop.getProperty("name"));
System.out.println(prop.getProperty("age"));
System.out.println(System.getProperty("user.dir")); //Eclipse下就是workspace目录
System.out.println(LoadProperty.class.getResource(""));
System.out.println(LoadProperty.class.getResource("/"));
System.out.println(LoadProperty.class.getClassLoader().getResource(""));
}
}
输出结果:
-- listing properties --
age=22
name=zhe
zhe
22
D:\JAVA\MyProject\MyTestProject
file:/D:/JAVA/MyProject/MyTestProject/bin/org/zhe/properties/
file:/D:/JAVA/MyProject/MyTestProject/bin/
file:/D:/JAVA/MyProject/MyTestProject/bin/