JDOM

JDOM (acronyme de l'anglais Java Document Object Model), est une bibliothèque open source pour manipulation des fichiers XML en Java. Elle intègre DOM et SAX, et supporte XPath et XSLT. Elle utilise des analyses syntaxiques externes pour construire les documents.

JDOM

Informations
Développé par Jason Hunter, Brett McLaughlin, et Rolf Lear[1]
Première version le 1 mars 2000
Dernière version 2.0.4 (le 8 novembre 2012)
Dépôt github.com/hunterhacker/jdom
Écrit en Java
Environnement Multiplate-forme
Type XML
Licence Licence Apache
Site web http://jdom.org

JDOM en Lepus3 (en)
Fabriques JDOM en LePUS3

Exemples

Soit le fichier "magasin.xml" :

<magasin nom="magasin pour geeks" localisation="Tokyo, Japon">
  <ordinateur nom="iBook" prix="1200" />
  <manga nom="Dragon Ball vol 1" prix="9" />
</magasin>

Il est possible de parser le document en un arbre d'objets Java avec JDOM :

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

SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new FileInputStream("magasin.xml"));
Element root = doc.getRootElement();
System.out.println(root.getName()); // renvoie "magasin"
System.out.println(root.getAttributeValue("nom")); //  "magasin pour geeks"
System.out.println(root.getAttributeValue("localisation")); //  "Tokyo, Japon"
System.out.println(root.getChildren()); // java.util.List de deux objets

Pour créer l'objet document sans fichier ni données en entrée :

Element root = new Element("magasin"); // définit la racine comme : <magasin></magasin>
Document doc = new Document(root);

Réciproquement, on peut construire un arbre d'éléments générant un fichier XML :

Element root = new Element("magasin");
root.setAttribute("nom", "magasin pour geeks");
root.setAttribute("localisation", "Tokyo, Japon");
Element item1 = new Element("ordinateur");
item1.setAttribute("nom", "iBook");
item1.setAttribute("prix", "1200");
root.addContent(item1);
XMLOutputter outputter = new XMLOutputter();
outputter.output(new Document(root), new FileOutputStream ("magasin2.xml"));
// crée la même chose que magasin.xml à partir du Java

Notes et références

Liens externes

  • Portail d’Internet
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.