Java Language Lettura di un file XML (annullamento della memoria)

Esempio

Leggere un file XML denominato UserDetails.xml con il contenuto sottostante

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

Abbiamo bisogno di una classe POJO denominata User.java come di seguito

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class User {

    private long userID;
    private String name;

    // getters and setters
}

Qui abbiamo creato le variabili e il nome della classe in base ai nodi XML. Per XmlRootElement , usiamo l'annotazione XmlRootElement sulla classe.

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!");
        }
    }
}

Qui viene usato il metodo unmarshal() per analizzare il file XML. Prende il nome del file XML e il tipo di classe come due argomenti. Quindi possiamo usare i metodi getter dell'oggetto per stampare i dati.