Java Language Lectura de un archivo XML (no riguroso)


Ejemplo

Para leer un archivo XML llamado UserDetails.xml con el contenido a continuación

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

Necesitamos una clase POJO llamada User.java como abajo

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class User {

    private long userID;
    private String name;

    // getters and setters
}

Aquí hemos creado las variables y el nombre de la clase de acuerdo con los nodos XML. Para XmlRootElement , usamos la anotación XmlRootElement en la clase.

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

Aquí se utiliza el método unmarshal() para analizar el archivo XML. Toma el nombre del archivo XML y el tipo de clase como dos argumentos. Luego podemos usar los métodos de obtención del objeto para imprimir los datos.