使用Properties类读取项目外的配置文件
最近公司要在一套服务器上搭建两个环境,为了节约成本,用到了阿里的docker,运维主管建议我们将配置文件分离出来,基本可以结束上线即通宵的生活了。这里是工具类,有用到的大兄弟可以根据自己的需求改一下。import org.apache.commons.codec.binary.Base64;import java.io.FileReader;import java.io.IOException;
·
最近公司要在一套服务器上搭建两个环境,为了节约成本,用到了阿里的docker,运维主管建议我们将配置文件分离出来,基本可以结束上线即通宵的生活了。
这里是工具类,有用到的大兄弟可以根据自己的需求改一下。
import org.apache.commons.codec.binary.Base64;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
/**
* 读取配置文件工具类
*
* 2017-11-29
*/
public class InitParams {
private Properties properties = new Properties();
private String uri = "";
public InitParams(String uri){
this.uri = uri;
}
/**
* 加载配置文件
* @throws IOException
*/
public void init() throws Exception {
Properties proper = new Properties();
proper.load(new FileReader("/data/web_kuaihuo/jar/config"+uri)); //配置文件读取uri
Map<String,String> map=new HashMap<String,String>();
Iterator<Object> keys = proper.keySet().iterator();
while(keys.hasNext()) {
String key= (String)keys.next();
if(proper.getProperty(key)!=null){
map.put(key, proper.getProperty(key).toString());
}
}
proper.putAll(map);
properties.putAll(proper);
}
public Properties getProperties() {
try {
init();
} catch (Exception e) {
e.printStackTrace();
}
return properties;
}
public void setProperties(Properties properties) {
this.properties = properties;
}
private final static Base64 BASE64=new Base64();
}
更多推荐
已为社区贡献1条内容
所有评论(0)