1.新建工具类PropertiesUtils
package com.webapp.util;
import java.lang.reflect.InvocationTargetException;
import java.util.NoSuchElementException;
import java.util.Properties;
import org.apache.commons.beanutils.BeanUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer;
/**
* properties工具类
*
* @author zern
*
*/
public class PropertiesUtils extends PropertyPlaceholderConfigurer {
private static Properties properties;
private static Logger logger = LoggerFactory.getLogger(PropertiesUtils.class);
public static String getValue(String key) {
if (properties.containsKey(key)) {
return properties.getProperty(key);
}
return null;
}
/**
* 取出String类型的Property,如果都Null则抛出异常.
*/
public static String getString(String key) {
String value = getValue(key);
if (value == null) {
throw new NoSuchElementException();
}
return value;
}
/**
* 取出String类型的Property.如果为Null则返回Default值
*
* @param key
* @param defaultValue
* @return
*/
public static String getString(String key, String defaultValue) {
String value = getValue(key);
return value != null ? value : defaultValue;
}
@Override
protected void processProperties(ConfigurableListableBeanFactory beanFactory, Properties props)
throws BeansException {
super.processProperties(beanFactory, props);
properties = props;
}
}
2.代码中使用
public static String websocketUrl;
public static String websocketUrl_jud;
static{
websocketUrl=PropertiesUtils.getString("websocketUrl");
websocketUrl_jud=PropertiesUtils.getString("websocketUrl_jud");
}