zhubaomin
2025-04-11 d1e380d5bc8d6cda7dc26778dd638b3367483ae7
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ConfigProperties.java
New file
@@ -0,0 +1,83 @@
package com.dy.common.util;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Properties;
@SuppressWarnings("unused")
public class ConfigProperties {
   private static HashMap<String, String> properties = new HashMap<>();
   private ConfigProperties() {
   }
   /**
    * 是否有属性了
    * @return 存在属性配置返回true,否则返回false
    */
   public static boolean hasProperties(){
      return properties != null && properties.size() > 0;
   }
   /**
    * 根据配置名称得到配置值
    *
    * @param name 属性名
    * @return 属性值
    */
   public static String getConfig(String name) {
      if (properties == null) {
         return null;
      }
      if(name.trim().equals("")){
         return "" ;
      }
      return properties.get(name);
   }
   /**
    * 初始化配置
    *
    * @param in 输入流
    * @param repeatCover 是否重复
    * @throws Exception  抛出异常
    */
   public static void init(InputStream in, boolean repeatCover) throws Exception {
      if(in == null){
         throw new Exception("属性配置文件不存在!") ;
      }
      if(properties.size() > 0){
         if(repeatCover){
            parseProperties(in);
         }
      }else{
         parseProperties(in);
      }
   }
   /**
    * 重新初始化
    *
    * @param in 输入流
    * @throws Exception 抛出异常
    */
   public static void reInit(InputStream in) throws Exception {
      properties = new HashMap<>();
      parseProperties(in);
   }
   private static void parseProperties(InputStream in) throws IOException{
       Properties prop = new Properties();
       prop.load(in);
       Iterator<Entry<Object, Object>> it = prop.entrySet().iterator() ;
       Entry<Object, Object> entry ;
       while(it.hasNext()){
          entry = it.next() ;
          properties.put((String)entry.getKey(), (String)entry.getValue()) ;
       }
   }
}