Java Language Escribir un archivo XML (ordenando un objeto)


Ejemplo

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class User {

    private long userID;
    private String name;
    
    // getters and setters
}

Al utilizar la anotación XMLRootElement , podemos marcar una clase como elemento raíz de un archivo XML.

import java.io.File;
import javax.xml.bind.JAXB;

public class XMLCreator {
    public static void main(String[] args) {
        User user = new User();
        user.setName("Jon Skeet");
        user.setUserID(8884321);

        try {
            JAXB.marshal(user, new File("UserDetails.xml"));
        } catch (Exception e) {
            System.err.println("Exception occurred while writing in XML!");
        } finally {
            System.out.println("XML created");
        }
    }
}

marshal() se utiliza para escribir el contenido del objeto en un archivo XML. Aquí, user objeto de user y un nuevo objeto de File se pasan como argumentos al marshal() .

En una ejecución exitosa, esto crea un archivo XML llamado UserDetails.xml en la ruta de clase con el contenido a continuación.

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