单例模式读取配置文件只创建一次
package com.jy.modules.util; import java.io.InputStream; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; import java.util.Properties; import org.apache.commons.lang.StringUtils; /** * * @description 功能描述: * @author 作 者: zhouzhiwei * @param 参 数: 单例模式读取配置文件只创建一次 * @createdate 建立日期: 2015年6月9日下午5:55:35 * @projectname 项目名称: cms * @packageclass 包及类名: com.jy.modules.util.SystemConfigUtil.java */ public class SystemConfigUtil { private static SystemConfigUtil systemConfigUtil = null; private static Map<String, String> proMap = new HashMap<String, String>(); @SuppressWarnings("rawtypes") private SystemConfigUtil() throws Exception { InputStream is = null; try { Properties pro = new Properties(); is = getClass().getResourceAsStream("/filesystem.properties"); //默认在根目录下 pro.load(is); Enumeration e = pro.propertyNames(); while (e.hasMoreElements()) { Object object = (Object) e.nextElement(); String value = (String) pro.get(object); proMap.put((String) object, value); } } catch (Exception e2) { e2.printStackTrace(); } finally { try { is.close(); } catch (Exception e) { e.printStackTrace(); } } } public static Map<String, String> getproMap() { return proMap; } public static SystemConfigUtil getInstance() throws Exception { if (systemConfigUtil == null) { systemConfigUtil = new SystemConfigUtil(); } return null; } @SuppressWarnings("static-access") public static String getValue(String mapkey) throws Exception{ SystemConfigUtil m = SystemConfigUtil.getInstance(); Map map = m.getproMap(); if(StringUtils.isNotBlank(mapkey)){ String key = (String) map.get(mapkey); return key; } return mapkey; } }