• PropertiesUtil 读取properties


    package com.midea.clean.util;
    
    import java.io.InputStream;
    import java.io.UnsupportedEncodingException;
    import java.net.URI;
    import java.util.Enumeration;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Properties;
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    public class PropertiesUtil {
    
        private static Properties props;
        private static final String propertieFile = "/returnCode.properties";
        
        private static final Logger LOGGER = LoggerFactory.getLogger(PropertiesUtil.class); 
    
        private PropertiesUtil(String fileName) {
            
        }
        
        static{
            try {
                props = new Properties();
                InputStream fis = PropertiesUtil.class.getResourceAsStream(propertieFile);
                props.load(fis);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
        private static void readProperties(String fileName) {
            try {
                props = new Properties();
                InputStream fis = PropertiesUtil.class.getResourceAsStream(fileName);
                props.load(fis);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
        /**
         * 获取某个属性
         * @throws UnsupportedEncodingException 
         */
        public static String getProperty(String key) {
            if (props == null) {
                readProperties(propertieFile);
            }
            try {
                
                LOGGER.info("获取属性 {}",key);
                String tmp = new String(props.getProperty(key).getBytes("ISO8859-1"), "UTF8");
                LOGGER.info("获取属性 {}:{}", key, tmp);
                return tmp;
            } catch (UnsupportedEncodingException e) {
                LOGGER.info("编码格式不支持:{}",e.getMessage());
                return "";
            } 
        }
    
        /**
         * 获取所有属性,返回一个map,不常用 可以试试props.putAll(t)
         */
        public Map getAllProperty() {
            if (props == null) {
                readProperties(propertieFile);
            }
            
            Map map = new HashMap();
            Enumeration enu = props.propertyNames();
            while (enu.hasMoreElements()) {
                String key = (String) enu.nextElement();
                String value = props.getProperty(key);
                map.put(key, value);
            }
            return map;
        }
    
        /**
         * 在控制台上打印出所有属性,调试时用。
         */
        public void printProperties() {
            props.list(System.out);
        }
    
        /*public static void main(String[] args) throws UnsupportedEncodingException {
            System.out.println(PropertiesUtil.getProperty("loginUsername"));
        }*/
    }
  • 相关阅读:
    20180610模拟赛T3——书本整理
    20180610模拟赛T1——脱离地牢
    20180606模拟赛T4——数学游戏
    软工2019作业一
    期末总结
    <英狼>--团队作业3 王者光耀--终极版
    团队作业3--王者光耀(体会)
    <英狼> 团队作业2--王者光耀
    王者光耀--个人任务
    团队-----英狼
  • 原文地址:https://www.cnblogs.com/yun965861480/p/7061744.html
Copyright © 2020-2023  润新知