Salvar configs em arquivo XML

3 respostas
E

Estou fazendo uma aplicacao desktop e preciso salvar uma serie de configuracoes conforme os dados informados pelo usuario em um arquivo XML, para posterior leitura por outra aplicacao.

Eu uso bastante a biblioteca JDOM para ler XMLs, mas nao sei se esta é a melhor opcao para gravar.

Alguem tem sugestoes? Se o JDOM é bom pra isso tambem ou se teria que fazer algo na forca bruta com SAX?

3 Respostas

T

Como é configuração (poucos dados, não estruturados, e normalmente precisamos de todos os dados, não somente um subconjunto), use o JDOM mesmo, que provavelmente é a melhor solução para o seu caso.
O pacote do Jakarta Apache (digester) foi escrito para ler a configuração dos produtos do projeto Apache, mas é meio complicado de usar e não é particularmente muito eficiente.
Se as configurações são guardadas em um único objeto Java e esse objeto for serializável, e se a outra aplicação for Java também e estiver sob seu controle, e se você for preguiçoso, vocè pode usar java.beans.XMLEncoder e java.beans.XMLDecoder.

Ironlynx
Estou fazendo uma aplicacao desktop e preciso salvar uma serie de configuracoes conforme os dados informados pelo usuario em um arquivo XML, para posterior leitura por outra aplicacao.
Jah pensou na possibilidade de usar XStream? [url]http://xstream.codehaus.org/[/url] Exemplo de uso:
public class Usuario implements java.io.Serializable{ 	
 	
  public final String nome;
  public final String sobrenome;
  public final String endereco;
  public final String cep;
  public final String telefone;
  public final String cpf;
  public final String data_nasc;
  public final String estado;
  
    
  public Usuario(String nome,String sobrenome,String endereco,String cep,String telefone,
                 String cpf,String data_nasc,String estado){
     this.nome=nome;
     this.sobrenome=sobrenome;
     this.endereco=endereco;
     this.cep=cep;
     this.telefone=telefone;
     this.cpf=cpf;
     this.data_nasc=data_nasc;
     this.estado=estado;        	
  	
  }  
  
  public String getNome(){
  	return nome;
  }  
  //outros getters e setters se necessário...
  }
import com.thoughtworks.xstream.XStream;

public class TestXStream{
	
	
		public static void main(String []args){
			 Usuario u=new Usuario("Zé","Ruela","R das Couves","20000","171-6969","5787289-01","01/05/1985","SC"); 
		     XStream xstream = new XStream();
                     xstream.alias("usuario", Usuario.class); //faz o XML ficar identado.
                    String xml= xstream.toXML(u);
                    System.out.println(xml);
        }
         	
}
Grinvon

Uma boa maneira de você salvar configs, poderia ser usando a classe Properties do Java, pois ela foi feita para tal fim. Vale apena usar, é simples e fácil, e tem até um bom artigo aqui no GUJ, dê uma conferida!

Criado 18 de março de 2005
Ultima resposta 19 de mar. de 2005
Respostas 3
Participantes 4