属性文件工具类

来源:互联网 发布:wince同步软件 win7 编辑:程序博客网 时间:2024/05/17 20:31
import org.apache.log4j.Logger;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.util.Properties;/*** 属性文件工具类* */public final class PropsUtil {    private  final  static Logger LOGGER =Logger.getLogger(PropsUtil.class);   /**    * 加载属性文件    * */    public static Properties loadProps(String fileName){        Properties props =null;        InputStream is=null;        try {            //使用相对于当前项目的classpath的相对路径来查找资源            is = Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName);            if (is == null){                throw  new FileNotFoundException(fileName+"file is not found");            }            props = new Properties();            props.load(is);        } catch (IOException e) {            LOGGER.error("load properties:", e);        } finally {            if (is != null){                try {                    is.close();                }catch (IOException e){                    LOGGER.error("close input stream failure", e);                }            }        }        return  props;    }   /**    * 获取字符型属性(可指认默认型)    * */    public static String getString(Properties props, String key, String defaultValue){        String value = defaultValue;        if (props.contains(key)){            value=props.getProperty(key);        }        return  value;    }   /**    * 获取字符型属性(默认值为空字符串)    * */    public  static  String getString(Properties props, String key){        //return  getString(props,key);        return  getString(props,key,"");    }   /**    * 获取数值型属性( 可指定默认型)    * */    public  static  int getInt(Properties props, String key, int defaultValue){        int value = defaultValue;        if (props.contains(key)){            value = CastUtil.castInt(props.getProperty(key));        }        return  value;    }    /**    * 获取数值型属性(默认值为0)    * */    public  static  int getInt(Properties props, String key){        return  getInt(props,key,0);    }   /**    * 获取布尔型属性(可指定默认值)    * */    public static  boolean getBoolean(Properties props, String Key, Boolean defaultValue){        boolean value = defaultValue;        if (props.containsKey(Key)){            value =CastUtil.castBoolean(props.getProperty(Key));        }        return value;    }   /**    * 获取布尔型属性(默认值为false)    * */    public static  boolean getBoolean(Properties props, String Key){        return getBoolean(props, Key,false);    }}

0 0