Em www.smartjava.com.br tem um artigo sobre isto...

Usando XML em arquivos de configura��o
por Sergio Oliveira Jr.



Introdu��o

Nesse artigo falarei sobre como XML est� se tornando rapidamente o padr�o
para arquivos de configura��o, em detrimento dos arquivos de texto puro.
Esque�a os arquivos .conf do Linux, os arquivos .ini do Windows e a classe
java.util.Properties. Com XML tudo fica mais f�cil e elegante!

O que � XML?

Gosto de pensar em XML como pura e simplesmente uma representa��o de dados.
N�o � uma linguagem de formata��o de dados como alguns afirmam, mas sim uma
representa��o de dados que pode ser analisada, manipulada, transformada,
transmitida, validada e formatada.

Arquivos de Configura��o

A especifica��o do EJB 1.1 (Enterprise JavaBeans) da Sun Microsystems trouxe
uma novidade muito boa para n�s desenvolvedores �vidos por portabilidade e
simplicidade: Os arquivos para deployment (configura��o) dos Beans
(deployment descriptors) foram padronizados para XML. Essa pr�tica foi
rapidamente seguida por outras especifica��es da Sun, como JSP/Servlet, se
tornando um padr�o para configura��o de aplica��es e arquivos de
inicializa��o.

Recentemente migrei alguns dos meus servidores Java para esse padr�o, e
constatei como essa solu��o � f�cil, pr�tica e elegante.

O arquivo XML abaixo � utilizado para a configura��o do meu programa JProxy:

<?xml version="1.0"?>
<JProxy>
 <porta>443</porta>

 <accept-list>
  <accept>
   <host>java.trend.com.br</host>
   <porta>*</porta>
  </accept>
  <accept>
   <host>www.trend.com.br</host>
   <porta>5001</porta>
  </accept>
 </accept-list>
</JProxy>

Java e XML

Agora descreverei como � simples para um programa Java analisar e
interpretar esse documento. Voc� precisar� do Xerces, que � um parser XML, e
do JDOM, que na minha opini�o � a melhor API de XML para Java. Ap�s baixar
essas bibliotecas, adicione os arquivos xerces.jar e jdom.jar no seu
CLASSPATH.


import org.jdom.*;
import org.jdom.input.*;
import java.io.*;
import java.util.*;

public class TestXML {

   public static void main(String [] args) {
      String filename = args[0];
      if (filename == null) {
         System.err.println("Faltou o nome do arquivo XML!");
  return;
      }

      try {
         // Inicialize o SAX (Xerces) Parser...
  // O par�metro indica que o documento
  // n�o ser� validado por um DTD ou Schema...
  SAXBuilder builder = new SAXBuilder(false);

  Document doc = builder.build(new File(filename));

  Element root = doc.getRootElement();

  String porta = root.getChild("porta").getText();

  System.err.println("A porta do servidor eh: " + porta);

  Element accept = root.getChild("accept-list");
  List acceptList = accept.getChildren("accept");
  Iterator iter = acceptList.iterator();

  System.err.println("Aceite conexoes aqui: ");

  while(iter.hasNext()) {
     Element element = (Element) iter.next();
     String h = element.getChild("host").getText();
     String p = element.getChild("porta").getText();
     System.err.println(h + ":" + p);
  }
      } catch(JDOMException e) {
         System.err.println("Problemas: " + e);
      }
   }
}

Como voc�s podem ver, n�o h� muito mist�rio e o c�digo acima � bem
auto-explicativo. Entretanto, como tudo em Java, � imprescind�vel ter a
documenta��o do JDOM em m�os para utilizar a API. Nela voc� ver� que existem
diversos m�todos para a manipula��o e cria��o de documentos XML, como o
m�todo Attribute getAttribute(String s), que retorna um par�metro de um
elemento XML.

Conclus�o

Atrav�s da API do JDOM, a manipula��o de arquivos XML em Java � bastante
simples e elegante. Esse artigo demonstrou como podemos utilizar arquivos
XML para a configura��o de aplica��es e para a constru��o de arquivos de
inicializa��o, uma pr�tica que est� se tornando padr�o no mercado de
software.



Sobre o Autor: Sergio Oliveira Jr. � engenheiro de computa��o certificado
pela Sun Microsystems em programa��o Java. Trabalhou na Accenture
(ex-Andersen Consulting) como consultor de Internet e atualmente trabalha na
Escola24Horas desenvolvendo solu��es em Java para o ensino a dist�ncia.
Tamb�m presta consultoria Java para empresas de m�dio e grande porte.

Copyright (c) 2001 - Todos os direitos dessa publica��o est�o reservados ao
autor, sendo expressamente proibida a reprodu��o total ou parcial desse
artigo de acordo com o Art. 184 do C�digo Penal e Art. 30 da Lei 5.988/73




------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a