读取配置文件已经成了Java程序员工作的一项必备技能。
配置文件的优点:
可维护性好
怎么个可维护性好呢?
- 它会让程序中变化的地方很灵活的配置,不需要修改代码。
- Java程序部署到服务器上去之后就变成了class文件,修改困难,通过配置文件我们就可以灵活地改变程序中需要变化的地方。比如说写一个发送邮件的程序,就可以将收件人写在配置文件中,不必每次编译代码。
- 假如过了很久,项目经理觉得有些地方需要改,以发邮件为例,现在需要给大boss也发邮件,而自己手头又没有代码,通过配置文件只需要修改配置文件即可。
废话不多说,直接进入主题,如何通过Java读取配置文件,其实很简单。
配置文件
name=刘德华
pwd=123456
代码如下
package com.myutils.prop; import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties; public class PropertiesUtil { private static Properties _prop = new Properties(); /**
* 读取配置文件
* @param fileName
*/
public static void readProperties(String fileName){
try {
InputStream in = PropertiesUtil.class.getResourceAsStream("/"+fileName);
BufferedReader bf = new BufferedReader(new InputStreamReader(in));
_prop.load(bf);
}catch (IOException e){
e.printStackTrace();
}
} /**
* 根据key读取对应的value
* @param key
* @return
*/
public static String getProperty(String key){
return _prop.getProperty(key);
}
}
测试
package com.myutils.prop; import org.junit.Test; /**
* Created by GWCheng on 2015/12/29.
*/
public class PropertiesUtilTest{ @Test
public void testReadProp() {
PropertiesUtil.readProperties("test.properties");
System.out.println(PropertiesUtil.getProperty("name"));
System.out.println(PropertiesUtil.getProperty("pwd"));
}
}
为什么没有设置值的方法呢?
因为配置文件一般都是只读的,需要设置的话,已经部署到服务器上去了,停掉服务,然后修改配置文件,就可以了。
读取配置文件的工具类先写到这里。
参考文献