XML Java

2 respostas
J

Galera to com um aplicativo no netbeans, como que
eu faço para gerar um xml…

tipo tem os campos pra inserir os dados, e esses
dado são salvos em uma jtable, tem como gerar
um xml disso?

t+

2 Respostas

cristian_clever

Do JTable, ou dos dados?

Vc pode vinclular os dados em VOs, e serializa-los para XML. Uma API muito rápida e simples de usar é o XStream, se esse for seu problema, acredito que essa é a solução!

[]s

Hellmanss

Aqui no GUJ tem uns artigos sobre parse de XML.

Acredito que com esse exemplo você consiga:

import java.io.FileOutputStream;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

public class teste {
	public static void main(String[] args) {
		Document document = null;
		DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

		try {
		DocumentBuilder builder = factory.newDocumentBuilder();
		document = builder.newDocument();
		} catch (ParserConfigurationException parserException) {
			parserException.printStackTrace();}

		//cria element root
		Element root = document.createElement("root");
		document.appendChild(root);

		//cria element animals 
		Element animals= document.createElement("animais");
		//cria element gato
		Element gato = document.createElement("gato");
		//cria elemento cachorro
		Element cachorro = document.createElement("cachorro");
		cachorro.setTextContent("Pode add texto aqui");
		cachorro.setAttribute("idade", "5");
		
		animals.appendChild(gato);
		animals.appendChild(cachorro);
		
		root.appendChild(animals);

		//salvar
		try {

					// create DOMSource for source XML document
					Source xmlSource = new DOMSource(document);

					// create StreamResult for transformation result
					Result result = new StreamResult(new FileOutputStream("a.xml"));

					// create TransformerFactory
					TransformerFactory transformerFactory = TransformerFactory	.newInstance();

					// create Transformer for transformation
					Transformer transformer = transformerFactory.newTransformer();

					transformer.setOutputProperty("indent", "yes");

					// transform and deliver content to client
					transformer.transform(xmlSource, result);
				}

				// handle exception creating TransformerFactory
				catch (Exception e) {
					e.printStackTrace();
				}
	}
}
Criado 23 de setembro de 2009
Ultima resposta 23 de set. de 2009
Respostas 2
Participantes 3