1. 程式人生 > >Java中讀取配置檔案(properties、xml)

Java中讀取配置檔案(properties、xml)

1. 利用java.util提供的工具類Properties
      - 首先我這邊有個file.properties檔案
      - 然後去讀取這個檔案

這裡寫圖片描述



注意專案路徑

  • 這裡寫圖片描述
//注意ProConfigUtil是當前類,也可用this替代
    InputStream inputStream = PropConfigUtil.class.getClassLoader()
           .getResourceAsStream("config/file.properties"); 
    Properties pro = new Properties();
pro.load(inputStream); String fileType = pro.getProperty("file.fileType").trim();



完整程式碼

package com.zsl.uploadfile;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import org.apache.commons.configuration.ConfigurationException;


public final
class ImagePropConfigUtil { public ImagePropConfigUtil() {} public static class SingleTon { private static InputStream inputStream = null; private static Properties pro = null; static { inputStream = ImagePropConfigUtil.class.getClassLoader().getResourceAsStream( "config/file.properties"
); pro = new Properties(); try { pro.load(inputStream); } catch (IOException e) { e.printStackTrace(); } } } public static String getVal(String key) { return SingleTon.pro.getProperty(key); } public static void main(String[] args) throws ConfigurationException { System.out.println("--------------------"); String val = ImagePropConfigUtil.getVal("file.fileType"); System.out.println("-------檔案型別為:\t" + val); } }
PropertiesConfiguration prop = new PropertiesConfiguration("config/file.properties");
prop.setDelimiterParsingDisabled(true);
String val = prop.getProperty("image.imageType").toString();
System.out.println(val);


完整程式碼

package com.zsl.uploadfile;

import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;


public class Util
{

    public Util()
    {}

    public static class Single
    {
        private static PropertiesConfiguration prop = null;
        static
        {
            try
            {
                prop = new PropertiesConfiguration("config/file.properties");
                prop.setDelimiterParsingDisabled(true);
            }
            catch (ConfigurationException e)
            {
                System.out.println(e.getMessage());
                e.printStackTrace();
            }
        }
    }

    public static String getVal(String key)
    {
        String value = Single.prop.getProperty(key).toString();
        return value;
    }

    public static void main(String[] args)
    {
        System.out.println(Util.getVal("file.fileType"));
    }
}



上面這兩種方法就可以讀取配置檔案。相比較而言比較高效率的讀取配置檔案,模擬單例模式,程式只調用一次,

列印結果如下:

這裡寫圖片描述