public class ConfigManager {
private static ConfigManager config = null;
//创建Properties文件 读取配置文件中的内容
Properties p = null;
//1,私有化构造方法
private ConfigManager (){
p = new Properties();
//通过类加载器加载配置文件--》得到一个输入流
//反射 ConfigManager.class
//ConfigManager.class.getClassLoader() 得到类加载器
//ConfigManager.class.getClassLoader().
//getResourceAsStream("database.properties"); 通过类加载器得到与属性文件相关的输入流
InputStream is = ConfigManager.class.getClassLoader().getResourceAsStream("database.properties");
//加载输入流 读取文件中的键值对
try {
p.load(is);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
if (is!=null) {
try {
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
//2,静态方法
public static ConfigManager getInstance(){
if (config==null) {
config = new ConfigManager();
}
return config;
}
/*
* 根据属性文件的键 得到值
*/
public String getString(String key){
return p.getProperty(key);
}
}