DOM4J ist eine Java XML -API, ähnlich wie JDOM, um XML -Dateien zu lesen und zu schreiben. DOM4J ist eine sehr, sehr ausgezeichnete Java XML -API mit hervorragender Leistung, leistungsstarker Funktionen und äußerst einfach zu bedienen. Es ist auch eine Open -Source -Software. Jetzt verwendet immer mehr Java -Software DOM4J, um XML zu lesen und zu schreiben. Es ist besonders erwähnenswert, dass selbst Suns Jaxm DOM4J verwendet. Dies ist ein Muss-Jar-Paket.
Das obige sagte, dass DOM4J so ausgezeichnet und einfach zu bedienen ist. Ab heute werde ich einige Verwendungen von DOM4J mit Ihnen teilen.
Die Hauptschnittstellen von DOM4J sind im org.dom4j -Paket definiert:
Um diesen Satz von Schnittstellen zu verstehen, besteht der Schlüssel darin, die Vererbungsbeziehung der Schnittstelle zu verstehen:
Das Lesen und Schreiben von XML -Dokumenten stützt sich hauptsächlich auf das org.dom4j.io -Paket, das zwei verschiedene Möglichkeiten für Domreader und Saxreader bietet. Die Anrufmethode ist jedoch dieselbe. Dies ist der Vorteil, sich auf Schnittstellen zu verlassen.
// XML aus der Datei lesen, den Dateinamen eingeben und das XML -Dokument public Dokument lesen (String -Dateiname) löscht die fehl Formaledurlexception aus, documentException {SAXReader reader = new SaxReader (); Document document = reader.read (neue Datei (Dateiname)); Rückgabedokument; } Die Lesemethode des Lesers ist überladen und kann verschiedene Parameter wie InputStream, Datei, URL usw. durchlesen werden. Das resultierende Dokumentobjekt listet die gesamte XML auf.
Nach meiner eigenen Erfahrung wird die Charaktercodierung gemäß der im XML -Datei -Header definierten Codierung konvertiert. Wenn Sie auf mannte Codeprobleme stoßen, achten Sie darauf, die Codierungsnamen an verschiedenen Stellen konsistent zu halten.
Das folgende Beispiel ist die Saxreader -Klasse liest eine XML -Datei über InputStream:
Die zu lesen: XML -Datei:
<? </db-info> </config>
Klassen, die XML -Dateien lesen:
Paket com.util; importieren java.io.inputstream; import Java.util.hashMap; importieren java.util.list; import Java.util.map; import org.dom4j.document; import org.dom4j.documentException; import org.dom4j.element; import org.dom4j.io.saxreader; / ** * Parse sys-config.xml Datei * @author ronaldinho * */ public class xmlconfigreader {// Lazy Private static xmlConfigreader Instance = null; // JDBC Related Information Private Jdbcconfig JDBCConfig = New JDBCConfig () speichern; private xmlConfigreader () {// Erstellen Sie ein Saxreader -Objekt SAXREADER reader = new Saxreader (); // Verwenden Sie den Klassenlader des aktuellen Threads, um den relativen Pfad der Datei zu erhalten, und lesen Sie den gepufferten Eingabestream InputStream in = Thread.currentThread (). Versuchen Sie {// Lesen Sie das XML -Dateidokument über Stream doc = reader.read (in); // Lesen Sie JDBC Related InformationElement DriverNameelT = (Element) doc.SelectObject ("/config/db-info/treibername"); Element urlelt = (Element) doc.SelectObject ("/config/db-info/url"); Element userNameElte = (Element) doc.selectObject ("/config/db-info/user-name"); Element passwordelted = (Element) doc.selectObject ("/config/db-info/password"); // Set JDBC -verwandte Informationen jdbcconfig.setDriverName (DriverNameelt.getStringValue ()); jdbcconfig.seturl (urlelt.getStringValue ()); jdbcconfig.setusername (ustReNameelt.getStringValue ()); jdbcconfig.setPassword (password.getStringValue ()); } catch (documentException e) {e.printstacktrace (); }} public static synchronisierte xmlConfigReader getInstance () {if (instance == null) {instance = new XmlConfigReader (); } return Instance; }}Die obige Methode besteht darin, ein Objekt über das Singleton -Muster zu erzeugen, das einen Sachsenreader instanziiert und dann die XML -Datei in den Stream lädt. Konvertieren Sie es dann in ein Dokumentobjekt über die Read () -Methode von Saxreader. Verwenden Sie dann dieses Dokumentobjekt, um den Wert des Knotens in der XML -Datei zu erhalten.
Heute werde ich kurz die Verwendung von DOM4J zum Lesen von XML -Dateien vorstellen. Ich werde später mit Ihnen über andere Verwendungen sprechen. Mach dir keine Sorgen, alle.
PS: Jeder ist herzlich eingeladen, mich zu kritisieren und zu korrigieren!
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.