package com.vci.common.resource; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.util.Properties; import java.util.PropertyResourceBundle; import java.util.ResourceBundle; import com.vci.common.log.ServerWithLog4j; /** *
Title:
*Description:
*Copyright: Copyright (c) 2009
*Company: VCI
* @author eddie * @time 2009-4-14 * @version 1.0 */ public class CommonProperties { private static String fileName = "/properties/conf.properties"; private static String developerFileName = "properties/conf.properties"; private static ResourceBundle _cfgResourceBundle = null; private static Properties confProperties = null; static { try { if ( _cfgResourceBundle == null ) { InputStream is = CommonProperties.class.getResourceAsStream(fileName); if (is != null) { _cfgResourceBundle = new PropertyResourceBundle(is); } if (_cfgResourceBundle == null) { File file = new File(developerFileName); if (file.exists()) { FileInputStream confPropertiesStream = new FileInputStream(developerFileName); confProperties = new Properties(); confProperties.load(confPropertiesStream); } } } } catch(Exception ee) { ee.printStackTrace(); ServerWithLog4j.logger.info("初始化服务器配置文件出错,请检查文件后重新启动"); } } public static String getStringProperty(String strKey) { return getStrPro(_cfgResourceBundle,strKey); } /** * 获取字符串,错误时返回默认值 * @param strKey * @param defaultVal * @return */ public static String getStringProperty(String strKey, String defaultVal) { return getStrPro(_cfgResourceBundle,strKey, defaultVal); } public static int getIntProperty(String strKey) { return getIntPro(_cfgResourceBundle,strKey); } /** * 获取整数,错误时返回默认值 * @param strKey * @param defaultVal * @return */ public static int getIntProperty(String strKey, int defaultVal) { return getIntPro(_cfgResourceBundle,strKey, defaultVal); } private static String getStrPro(ResourceBundle _cfgResourceBundle, String key){ String rs = null; try{ if (_cfgResourceBundle != null) { rs = _cfgResourceBundle.getString(key).trim(); } else if (confProperties != null){ rs = confProperties.getProperty(key); } }catch(Exception e){ rs = ""; } finally { if (rs == null) { rs = ""; } } return rs; } private static String getStrPro(ResourceBundle _cfgResourceBundle, String key, String defaultVal){ String rs = null; try{ if (_cfgResourceBundle != null) { rs = _cfgResourceBundle.getString(key).trim(); } else if (confProperties != null){ rs = confProperties.getProperty(key); } }catch(Exception e){ rs = defaultVal; } finally { if (rs == null) { rs = defaultVal; } } return rs; } private static int getIntPro(ResourceBundle _cfgResourceBundle, String key){ try{ return Integer.valueOf(getStrPro(_cfgResourceBundle, key)).intValue(); }catch(Exception e){ return -1; } } private static int getIntPro(ResourceBundle _cfgResourceBundle, String key, int defaultVal){ try{ return Integer.valueOf(getStrPro(_cfgResourceBundle, key, String.valueOf(defaultVal))).intValue(); }catch(Exception e){ return defaultVal; } } }