Fichier de configuration de lecture du mode Singleton

Lors de la lecture du fichier de configuration, si nous écrivons une classe Java ordinaire, elle peut être chargée et exécutée plusieurs fois lorsqu'elle est appelée. Mais par exemple, les données des fichiers de configuration, le chargement d'attributs, etc., nous les avons configurées à l'avance et ne seront pas modifiées fréquemment. Nous n'avons besoin de les charger qu'une seule fois lorsque nous l'utilisons. Ensuite, nous pouvons utiliser le mode singleton.

remplir cette fonction.

package com.test.connect.hive;

import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Objects;
import java.util.Properties;


public  class HiveResourceInfo {

    private static HiveResourceInfo resourceInfo=null;
    private static Properties prop=null;
    private HiveResourceInfo(){}

    public static synchronized Properties getHiveConf() throws Exception {
        if(null == resourceInfo){
            resourceInfo=new HiveResourceInfo();
            InputStream inputStream = HiveResourceInfo.class
                    .getClassLoader()
                    .getResourceAsStream("connInfo/hive/hiveConf.properties");

            if (Objects.isNull(inputStream)) {
                throw new Exception("can not read connInfo/hive/hiveConf.properties");
            }
            if(null == prop){
                prop=new Properties();
            }
            prop.load(new InputStreamReader(inputStream,"UTF-8"));

        }

        return prop;
    }
}

Remarque: le chemin sur le fichier de lecture local et le serveur peuvent être différents, vous devez ajouter plus de '/'

Je suppose que tu aimes

Origine blog.csdn.net/Baron_ND/article/details/110132828
conseillé
Classement