讀取 XML 檔案(解組)

使用以下內容讀取名為 UserDetails.xml 的 XML 檔案

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user>
    <name>Jon Skeet</name>
    <userID>8884321</userID>
</user>

我們需要一個名為 User.java 的 POJO 類,如下所示

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class User {

    private long userID;
    private String name;

    // getters and setters
}

這裡我們根據 XML 節點建立了變數和類名。要對映它們,我們在類上使用註釋 XmlRootElement

public class XMLReader {
    public static void main(String[] args) {
        try {
            User user = JAXB.unmarshal(new File("UserDetails.xml"), User.class);
            System.out.println(user.getName());   // prints Jon Skeet
            System.out.println(user.getUserID()); // prints 8884321
        } catch (Exception e) {
            System.err.println("Exception occurred while reading the XML!");
        }
    }
}

這裡 unmarshal() 方法用於解析 XML 檔案。它將 XML 檔名和類型別作為兩個引數。然後我們可以使用物件的 getter 方法來列印資料。