Olá pessoal, hoje irei explicar um pouco sobre como gerar um XML através de uma classe Java, com a biblioteca XStream.
Vamos criar um projeto chamado XML_Java, e dentro do projeto criar uma pasta com o nome lib, onde será armazenado o nosso jar.
Será necessário baixar o jar do XStream no site: https://x-stream.github.io/download.html.
Após o download, salve o arquivo jar na pasta lib dentro do projeto criado anteriormente, e adicione o jar ao build path, com estes procedimentos efetuados, o projeto reconhece o XStream.
Agora vamos codificar um pouco, utilizaremos duas classes, uma classe cliente que vamos usar seus atributos para criação do XML, e outra classe para roda a aplicação.
public class Cliente {
private String nome;
private String sobrenome;
private int idade;
private int identificador;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getSobrenome() {
return sobrenome;
}
public void setSobrenome(String sobrenome) {
this.sobrenome = sobrenome;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public int getIdentificador() {
return identificador;
}
public void setIdentificador(int identificador) {
this.identificador = identificador;
}
}
Classe responsável por inicializar a aplicação.
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
public class Main {
public static void main(String[] args) {
Cliente cliente = new Cliente();
cliente.setNome("Francisco");
cliente.setSobrenome("Chaves");
cliente.setIdade(24);
cliente.setIdentificador(1);
XStream stream = new XStream(new DomDriver());
//remoneando o nome do pacote
stream.alias("cliente", Cliente.class);
//criando o xml
String xml = stream.toXML(cliente);
System.out.println(xml);
}
}
O resultado impresso no console após a execução:
<cliente>
<nome>Francisco</nome>
<sobrenome>Chaves</sobrenome>
<idade>24</idade>
<identificador>1</identificador>
</cliente>
Código do projeto no GitHub: https://github.com/franciscojsc/xml-com-java.