package com.vci.server.base.mail; 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; public class EmailConfPropreties { private static String fileName = "/properties/emailConf.properties"; private static String developerFileName = "properties/emailConf.properties"; private static ResourceBundle _cfgResourceBundle = null; private static Properties confProperties = null; static { try { if (_cfgResourceBundle == null) { InputStream is = EmailConfPropreties.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) { ServerWithLog4j.logger.error("加载邮件配置信息出错,请检查文件重新启动服务!"); } } public static String getStringProperty(String strKey) { return getStrPro(_cfgResourceBundle, strKey); } public static String getStringProperty(String strKey, String defaultVal) { return getStrPro(_cfgResourceBundle, strKey, defaultVal); } public static int getIntProperty(String strKey) { return getIntPro(_cfgResourceBundle, strKey); } 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; } }