codestory

Die Anleitung zu Java JDOM2

  1. Die Vorstellung
  2. Die Bibliothek
  3. Das Beispiel anfängen
  4. Der Vergleich einiger Unterschieden zwischen JDOM und DOM

1. Die Vorstellung

JDOM ist ein XML Modell in dem Speicher (memory), damit Sie die XML Dokument lesen, schreiben, erstellen und ändern können. JDOM sowieso DOM, die beide bieten auch das Modell der XML Dokument im Speicher.
DOM wird gemacht um gleich in vielen Sprache (C, C + +, ECMAScript , Java , JScript , Lingo , PHP, PLSQL ,und Python) zu arbeiten.
  • JDOM wird nur für die Java gemacht und benutzt die bestimmten Java-Funktionen, die das Modell DOM vermeidet. Wegen des Grund führt JDOM absichtlich die DOM Standard w3c durch. JDOM ist kein XML Parser aber es kann SAX, Stax oder DOM-Parser benutzen um die JDOM Dokumente zu bauen (build). Die Version JDOM ab 2.0.0 ( JDOM2 ) verwenden alle Funktionen der Muttersprache Java 6 und dann wie Generics , Enums , var-args , und co-variant data type, v.. v..

2. Die Bibliothek

Änders als das vorhandene DOM in JDK müssen Sie zur JDOM-Benutzung die Bibliothek herunterladen
Sie können bei der Hauptseite von JDOM bei... herunterladen
Oder es ist einfach, aus Maven Repository (Die Lagerung der Maven) herunterzuladen:

3. Das Beispiel anfängen

Das ist das Projekt nach der Erledigung:
department-datas.xml
<?xml version="1.0"?>
<department>

  <employee>
      <empNo>E01</empNo>
      <empName>KING</empName>
      <hireDate>17-11-1981</hireDate>
      <salary>100000</salary>
  </employee>

  <employee>
      <empNo>E02</empNo>
      <empName>JONES</empName>
      <hireDate>02-04-1981</hireDate>
      <salary>200000</salary>
  </employee>

</department>
ReadXMLFile.java
package org.o7planning.tutorial.jdom2;

import java.io.File;
import java.io.IOException;
import java.util.List;

import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;

public class ReadXMLFile {
   public static void main(String[] args) {

       SAXBuilder builder = new SAXBuilder();
       File xmlFile = new File("department-datas.xml");
       
       System.out.println("Parsing FILE: "+ xmlFile.getAbsolutePath());

       try {

           Document document = (Document) builder.build(xmlFile);
           Element rootNode = document.getRootElement();
           List<Element> list = rootNode.getChildren("employee");

           for (int i = 0; i < list.size(); i++) {

               Element node = (Element) list.get(i);
               
               System.out.println(" ------ ");
               
               System.out.println("Emp No : " + node.getChildText("empNo"));
               
               System.out.println("Emp Name : " + node.getChildText("empName"));
               
               System.out.println("Hire Date : " + node.getChildText("hireDate"));
               
               System.out.println("Salary : " + node.getChildText("salary"));

           }

       } catch (IOException e) {
           System.out.println(e.getMessage());
       } catch (JDOMException e) {
           System.out.println(e.getMessage());
       }
   }
}
Das Ergebnis nach dem Starten von der Klasse ReadXMLFile:

4. Der Vergleich einiger Unterschieden zwischen JDOM und DOM

TODO