| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
y37f
10年前发布

Spring配置文件的加载工具类

Spring通用PropertiesUtil。Spring配置文件的加载工具类。

public class PropertiesUtil extends PropertyPlaceholderConfigurer implements          Map<String, String> {         private static final Logger logger = Logger.getLogger(PropertiesUtil.class);      private static Map<String, String> ctxPropertiesMap;         protected void processProperties(              ConfigurableListableBeanFactory beanFactoryToProcess,              Properties props) throws BeansException {          super.processProperties(beanFactoryToProcess, props);          if (ctxPropertiesMap != null) {              logger.warn("The property map will be override!");          }          ctxPropertiesMap = new HashMap<String, String>();          for (Object key : props.keySet()) {              String keyStr = key.toString();              String value = props.getProperty(keyStr);              ctxPropertiesMap.put(keyStr, value);          }      }         public static String getString(String name) {          if (ctxPropertiesMap == null) {              ctxPropertiesMap = new HashMap<String, String>();          }          return (String) ctxPropertiesMap.get(name);      }         public static boolean getBoolean(String name, boolean defaultValue) {          String v = getString(name);          if (v == null) {              return defaultValue;          }          try {              return Boolean.parseBoolean(v);          } catch (Exception e) {          }          return defaultValue;      }         public static int getIntValue(String name, int defaultValue) {          String v = getString(name);          if (v == null) {              return defaultValue;          }          try {              return Integer.parseInt(v);          } catch (Exception e) {          }          return defaultValue;      }         public static long getLongValue(String name, long defaultValue) {          String v = getString(name);          if (v == null) {              return defaultValue;          }          try {              return Long.parseLong(v);          } catch (Exception e) {          }          return defaultValue;      }         public static short getShortValue(String name, short defaultValue) {          String v = getString(name);          if (v == null) {              return defaultValue;          }          try {              return Short.parseShort(v);          } catch (Exception e) {          }          return defaultValue;      }         public static double getDoubleValue(String name, double defaultValue) {          String v = getString(name);          if (v == null) {              return defaultValue;          }          try {              return Double.parseDouble(v);          } catch (Exception e) {          }          return defaultValue;      }         public static float getFloatValue(String name, float defaultValue) {          String v = getString(name);          if (v == null) {              return defaultValue;          }          try {              return Float.parseFloat(v);          } catch (Exception e) {          }          return defaultValue;      }         public int size() {          return ctxPropertiesMap.size();      }         public boolean isEmpty() {          return ctxPropertiesMap.isEmpty();      }         public boolean containsKey(Object key) {          return ctxPropertiesMap.containsKey(key);      }         public boolean containsValue(Object value) {          throw new UnsupportedOperationException();      }         public String put(String key, String value) {          throw new UnsupportedOperationException();      }         public String remove(Object key) {          throw new UnsupportedOperationException();      }         public void putAll(Map<? extends String, ? extends String> m) {          throw new UnsupportedOperationException();      }         public void clear() {          throw new UnsupportedOperationException();      }         public Set<String> keySet() {          throw new UnsupportedOperationException();      }         public Collection<String> values() {          throw new UnsupportedOperationException();      }         public Set<Map.Entry<String, String>> entrySet() {          throw new UnsupportedOperationException();      }         public String get(Object key) {          return (String) ctxPropertiesMap.get(key);      }    

使用方式,创建一个上面类的bean:
<bean id="propertyConfigurer"          class="com.forg.common.PropertiesUtil">          <property name="locations">              <list>                  <value>classpath:system.properties</value>              </list>          </property>      </bean>