Properties读取项目配置文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Properties读取项目配置文件相关的知识,希望对你有一定的参考价值。
1.Properties
Properties(Java.util.Properties)主要用于读取Java的配置文件 在平时的开发工程,有时候需要配置一些连接信息。比如数据库之类的东东,因为大多数都会把相应的信息配置在Properties文件中或者是在XML中。其配置文件常为.properties文件,格式为文本文件,文件的内容的格式是“键=值”的格式,文本注释信息可以用"#"来注释。
它提供了几个主要的方法:
1. getProperty ( String key),用指定的键在此属性列表中搜索属性。也就是通过参数 key ,得到 key 所对应的 value。
2. load ( InputStream inStream),从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的 test.properties 文件)进行装载来获取该文件中的所有键 - 值对。以供 getProperty ( String key) 来搜索。
3. setProperty ( String key, String value) ,调用 Hashtable 的方法 put 。他通过调用基类的put方法来设置 键 - 值对。
4. store ( OutputStream out, String comments),以适合使用 load 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。与 load 方法相反,该方法将键 - 值对写入到指定的文件中去。
5. clear (),清除所有装载的键 - 值对。该方法在基类中提供
下面的代码是读取其配置信息:
Properties pro=new Properties();
pro.load(new FileInputStream("conf/itemconfig.properties")); 加载文件
或者
InputStream msgStream = test.class.getResourceAsStream("/itemconfig.properties");
pro.load(msgStream);
pro.getProperty("MERCHANT_ID","123");通过Key值读取其Value值,如果Key不存在,则后面的值为默认 值。
pro.setProperty("MERCHANT_Name","测试"); 向配置文件中写入一条配置信息
//如果将其中配置信息写入一个新的文件中,使用store方法
File outStream=new File("conf/newItemconfig.properties"); 设置新配置文件所在的位置
pro.store(new FileOutputStream(outStream), "测试"); comments是一行注释,不写可以传null;
store方法的内部编码是ISO-8859-1,ISO-8859-1是单字节编码,自身不能显示中文,若要显示中文,必须和其他 能显示中文的编码配合,new String(target.getBytes("iso-8859-1"),"utf-8")用这个方法能转换成utf-8的形式显示。
2.通过XML读取配置文件,其方法和上面类似。
Properties prop=new Properties();
File file=new File("conf/item.xml");
prop.loadFromXML(new FileInputStream(file));
prop.setProperty("ceshi", "哈哈");
File outFile=new File("itemCon.xml");
prop.storeToXML(new FileOutputStream(outFile), "测试", "UTF-8");
以上是关于Properties读取项目配置文件的主要内容,如果未能解决你的问题,请参考以下文章
读取Maven项目下resources目录下的配置文件(properties为例)