/**
* Company
* Copyright (C) 2004-2018 All Rights Reserved.
*/
package com.yubin.test;
import java.io.*;
import java.net.URL;
import java.util.Properties;
/**
* @author Administrator
* @version $Id ProUtil.java, v 0.1 2018-01-25 22:11 Administrator Exp $$
*/
public class ProUtil {
private static Properties props = null;
private static File configFile = null;
private static long fileLastModified = 0L;
private static String configFileName = "spring/database.properties";
private static void init() {
URL url = ProUtil.class.getClassLoader().getResource(configFileName);
configFile = new File(url.getFile());
fileLastModified = configFile.lastModified();
props = new Properties();
load();
}
private static void load() {
try {
props.load(new InputStreamReader(new FileInputStream(configFile),"UTF-8"));
fileLastModified = configFile.lastModified();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
public static String getConfig(String key) {
if ((configFile == null) || (props == null)) init();
if (configFile.lastModified() > fileLastModified) load(); //当检测到文件被修改时重新加载配置文件
return props.getProperty(key);
}
public static void main(String[] args){
System.out.println(getConfig("jdbc.driver"));
}
}