天天看點

Java中讀取 .properties 和 .xml 檔案總結内容總結

配置檔案内容擷取

  • 總結内容
    • 1. Java中為什麼要使用配置檔案
    • 2. Java中常用的配置檔案類型有哪些以及它們的特點
      • Properties配置檔案
      • XML配置檔案
  • 總結

總結内容

1. Java中為什麼要使用配置檔案

為了減少代碼的耦合性,以及便于後期維護,在開發中我們經常需要修改以前的資料,如果去改變代碼容易出現一些錯誤,而有了配置檔案我們就可以直接修改配置檔案就好了,這樣降低了代碼之間的耦合性,同時也友善後期維護。

2. Java中常用的配置檔案類型有哪些以及它們的特點

1)Java中常用的配置檔案類型有 Properties 和 XML 配置檔案。

Properties配置檔案

  • 存儲資料特點:

    1)使用鍵值對(key=value)格式,多對資料使用換行分開。

  • 使用注意事項:

    1)配置檔案需要跟随着位元組碼走.需要放在 Resource Root 中. 會直接編譯到位元組碼輸出路徑

    2)在配置檔案中,所有的資料都是字元串,不需要使用引号

    3)在配置檔案中不需要使用空格

  • 解析properties配置檔案
public class PropertiesTest {
    public static void main(String[] args) throws IOException {
        // 讀取配置檔案中的資料
//        Properties pt = new Properties();

        // 解決路徑寫死問題,使用相對路徑
        // 相對于位元組碼的輸出根路徑,使用 ClassLoader 對象來擷取位元組碼輸出路徑下的檔案

        InputStream in = Thread.currentThread().        // 目前線程
                getContextClassLoader().        // 擷取類加載器
                getResourceAsStream("jdbc.properties");     // 加載配置檔案
        Properties pt = new Properties();
        pt.load(in);
        String username = pt.getProperty("jdbc.username");
        String password = pt.getProperty("jdbc.password");
        System.out.println("username = " + username);
        System.out.println("password = " + password);
    }
}
           

XML配置檔案

  • 存儲資料特點:

    1)xml是一種可擴充的标記語言

  • 使用xml配置檔案的好處

    1)xml能存儲小量資料,僅僅是存儲資料。

    2)xml可以跨平台,主流各種平台都對xml有支援, 真正的跨平台,

    3)xml讀取速度快。

    4)xml規範性非常強,這樣就可以更好的去解釋檔案内的資訊。

    5)xml 是各種應用程式之間進行資料傳輸的最常用的工具。

    6)xml 不适合動态語言但非常适合強類型的語言。java 處理 xml 更容易。

  • Document常用API

    1)document.getElementById(‘元素的ID’) 在整個文檔中,通過元素的ID擷取到這個元素對象(擷取的是一個元素)

    注意: 如果頁面中的id重複了,那麼這個方法預設隻獲得第一個元素

    2)通過元素的标簽名,來擷取一組元素(有幾個擷取幾個)

      document.getElementsByTagName(‘元素的标簽名’) 在整個文檔中,通過元素的标簽名擷取一組元素。擷取的是一個對象資料類型結果,并且是一個類數組(以數字作為索引,索引從0開始,逐級遞增,索引代表的是目前對應的某一個元素,有一個叫做length的屬性代表擷取的個數)

    3)document.getELementsByClassName(‘xxx’):這個跟上面一個類似,傳回的也是數組,但是需要注意的是,它會傳回所有包含xxx或者隻有xxx的标簽的數組。

  • 解析XML配置檔案
public class XMLTest {
    public static void main(String[] args) throws ParserConfigurationException, IOException, SAXException {
        // 1、擷取目前文檔對象
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        DocumentBuilder builder = factory.newDocumentBuilder();
        Document document = builder.parse("resources/user.xml");
        // 2、擷取根元素
        Element root = document.getDocumentElement();
        // 3、擷取第二個 linkman 元素
//        Element linkmanEl = (Element) root.getElementsByTagName("classname").item(0);
        Element linkmanEl = (Element) root.getElementsByTagName("linkman").item(1);
        // 4、擷取第二個 linkman 元素下的 name 元素
        Element nameEl = (Element) linkmanEl.getElementsByTagName("name").item(0);
        // 5、擷取文本内容
        String content = nameEl.getTextContent();
        System.out.println(content);
    }
}
           

總結

以上就是對配置檔案的總結了,代碼僅供參考,歡迎讨論交流。