zoukankan      html  css  js  c++  java
  • 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"));
        }*/
    }
  • 相关阅读:
    一个网络狂人的财富轨迹
    婚姻的精髓
    软件史上最伟大的十大程序员
    由瓜子理论引出的人力资源管理启示
    感情裂缝的"维修工" 在生活抛锚的地方起航
    寻找更新过的数据
    asp.net mvc中TempData和ViewData的区别
    SQL Server Backup
    VS字符串时间转换用法
    SQL Server 根据动态条件insert,update语句
  • 原文地址:https://www.cnblogs.com/yun965861480/p/7061744.html
Copyright © 2011-2022 走看看