Com o XSD, você pode gerar as classes utilizando o eclipe ou com o comando de prompt xjc que vem com o pacote do JAXB.
Para o eclipse, utilize a opção exibida no print acima.
package samples;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Unmarshaller;
import samples.jaxb.ObjectFactory;
import samples.jaxb.Pedido;
public class LeitorXML {
public static void main(String[] args) {
try {
// Nunca colocar esse trecho em um loop
JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
BufferedInputStream bis = new BufferedInputStream(new FileInputStream("pedido.xml"));
Pedido pedido = (Pedido) jaxbUnmarshaller.unmarshal(bis);
System.out.println(pedido.getIdPedido());
System.out.println(pedido.getRemetente());
System.out.println(pedido.getDestinatario().getNome());
System.out.println(pedido.getItem().get(0).getPreco());
} catch (Exception e) {
e.printStackTrace();
}
}
}
Nenhum comentário:
Postar um comentário