Parser Java DOM4J - Panoramica
DOM4J è una libreria open source basata su Java per analizzare i documenti XML. È un'API altamente flessibile ed efficiente in termini di memoria. È ottimizzato per Java e utilizza raccolte Java come List e Arrays.
DOM4J funziona con DOM, SAX, XPath e XSLT. Può analizzare documenti XML di grandi dimensioni con un ingombro di memoria molto basso.
Configurazione dell'ambiente
Per utilizzare il parser DOM4J, dovresti avere dom4j-1.6.1.jar e jaxen.jar nel classpath della tua applicazione. Scarica dom4j-1.6.1.zip.
Quando usare?
Dovresti usare un parser DOM4J quando:
Hai bisogno di sapere molto sulla struttura di un documento XML.
È necessario spostare parti di un documento XML (ad esempio, potresti voler ordinare determinati elementi).
È necessario utilizzare le informazioni in un documento XML più di una volta.
Sei uno sviluppatore Java e desideri sfruttare l'analisi ottimizzata per Java di XML.
Cosa ottieni?
Quando si analizza un documento XML con un parser DOM4J, si ottiene la flessibilità di recuperare una struttura ad albero che contiene tutti gli elementi del documento senza influire sull'impronta di memoria dell'applicazione.
DOM4J fornisce una varietà di funzioni di utilità che puoi utilizzare per esaminare il contenuto e la struttura di un documento XML nel caso in cui il documento sia ben strutturato e la sua struttura sia nota.
DOM4J utilizza l'espressione XPath per navigare in un documento XML.
Vantaggi
DOM4J fornisce agli sviluppatori Java la flessibilità e la facile manutenibilità del codice di analisi XML. È un'API leggera e veloce.
Classi DOM4J
DOM4J definisce diverse classi Java. Ecco le classi più comuni:
Document- Rappresenta l'intero documento XML. Un oggetto Document viene spesso definito albero DOM.
Element- Rappresenta un elemento XML. L'oggetto elemento dispone di metodi per manipolare i suoi elementi figlio, testo, attributi e spazi dei nomi.
Attribute- Rappresenta un attributo di un elemento. L'attributo ha un metodo per ottenere e impostare il valore dell'attributo. Ha un tipo genitore e attributo.
Node - Rappresenta Element, Attribute o ProcessingInstruction.
Metodi comuni DOM4J
Quando lavori con DOM4J, ci sono diversi metodi che utilizzerai spesso:
SAXReader.read(xmlSource)() - Costruisci il documento DOM4J da una sorgente XML.
Document.getRootElement() - Ottieni l'elemento radice di un documento XML.
Element.node(index) - Ottieni il nodo XML in un particolare indice in un elemento.
Element.attributes() - Ottieni tutti gli attributi di un elemento.
Node.valueOf(@Name) - Ottieni i valori di un attributo con il nome di un elemento.