Analisador Java DOM4J - Visão geral
DOM4J é uma biblioteca de código aberto baseada em Java para analisar documentos XML. É uma API altamente flexível e com uso eficiente de memória. É otimizado para Java e usa coleções Java como List e Arrays.
DOM4J funciona com DOM, SAX, XPath e XSLT. Ele pode analisar grandes documentos XML com uma pegada de memória muito baixa.
Configuração de ambiente
Para usar o analisador DOM4J, você deve ter dom4j-1.6.1.jar e jaxen.jar no classpath de seu aplicativo. Baixe dom4j-1.6.1.zip.
Quando usar?
Você deve usar um analisador DOM4J quando -
Você precisa saber muito sobre a estrutura de um documento XML.
Você precisa mover partes de um documento XML (você pode querer classificar certos elementos, por exemplo).
Você precisa usar as informações em um documento XML mais de uma vez.
Você é um desenvolvedor Java e deseja aproveitar a análise de XML otimizada para Java.
O que você ganha?
Ao analisar um documento XML com um analisador DOM4J, você obtém a flexibilidade de obter de volta uma estrutura de árvore que contém todos os elementos do seu documento sem afetar a área de cobertura da memória do aplicativo.
DOM4J fornece uma variedade de funções utilitárias que você pode usar para examinar o conteúdo e a estrutura de um documento XML, caso o documento seja bem estruturado e sua estrutura seja conhecida.
DOM4J usa a expressão XPath para navegar por um documento XML.
Vantagens
DOM4J fornece aos desenvolvedores Java a flexibilidade e facilidade de manutenção do código de análise XML. É uma API leve e rápida.
Classes DOM4J
DOM4J define várias classes Java. Aqui estão as classes mais comuns -
Document- Representa todo o documento XML. Um objeto Document é freqüentemente referido como uma árvore DOM.
Element- Representa um elemento XML. O objeto Element possui métodos para manipular seus elementos filho, texto, atributos e namespaces.
Attribute- Representa um atributo de um elemento. O atributo tem um método para obter e definir o valor do atributo. Tem pai e tipo de atributo.
Node - Representa elemento, atributo ou ProcessingInstruction.
Métodos DOM4J comuns
Quando você está trabalhando com o DOM4J, existem vários métodos que você usa com frequência -
SAXReader.read(xmlSource)() - Construa o documento DOM4J a partir de uma fonte XML.
Document.getRootElement() - Obtenha o elemento raiz de um documento XML.
Element.node(index) - Obtenha o nó XML em um índice específico em um elemento.
Element.attributes() - Obtenha todos os atributos de um elemento.
Node.valueOf(@Name) - Obtenha os valores de um atributo com o nome fornecido de um elemento.