Dom4j est une API Java XML, similaire à JDom, utilisée pour lire et écrire des fichiers XML. Dom4j est une très, très excellente API Java XML, avec d'excellentes performances, des fonctions puissantes et extrêmement facile à utiliser. Il s'agit également d'un logiciel open source. Désormais, de plus en plus de logiciels Java utilise DOM4J pour lire et écrire XML. Il convient particulièrement de mentionner que même Jaxm de Sun utilise DOM4J. Il s'agit d'un package de pot incontournable.
Ce qui précède a déclaré que Dom4j est si excellent et facile à utiliser. Donc, à partir d'aujourd'hui, je partagerai avec vous quelques usages de DOM4J.
Les principales interfaces de DOM4J sont définies dans le package org.dom4j:
Pour comprendre cet ensemble d'interfaces, la clé est de comprendre la relation d'héritage de l'interface:
La lecture et l'écriture des documents XML reposent principalement sur le package org.dom4j.io, qui fournit deux façons différentes de DomReader et SaxReader, mais la méthode d'appel est la même. C'est l'avantage de s'appuyer sur les interfaces.
// Lire XML à partir du fichier, entrez le nom du fichier et renvoyez le document XML Public Document Read (String FileName) lève MalformEdUrException, documentException {saxReader Reader = new saxReader (); Document document = reader.read (nouveau fichier (nom de fichier)); Document de retour; } La méthode de lecture du lecteur est surchargée et peut être lue à travers différents paramètres tels que InputStream, File, URL, etc. L'objet de document résultant répertorie l'ensemble du XML.
Selon ma propre expérience, la lecture du codage de personnage est convertie en fonction de l'encodage défini dans l'en-tête de fichier XML. Si vous rencontrez des problèmes de code brouillé, veillez à garder les noms d'encodage à divers endroits cohérents.
L'exemple suivant est que la classe SaxReader lit un fichier XML via InputStream:
Le fichier XML à lire:
<? xml version = "1.0" Encoding = "UTF-8"?> <FIFIG> <DB-Info> <Diver-Name> Oracle.jdbc.Driver.oracledriver </ Driver-Name> <Url> JDBC: Oracle: Thin: @localhost: 1522: MyDB </ url> <user> drp </ user-name> </DB-Info> </FIGIG>
Classes qui lisent les fichiers XML:
package com.util; import java.io.inputStream; import java.util.hashmap; Importer java.util.list; importation java.util.map; import org.dom4j.Document; Import org.dom4j.DocumentException; import org.dom4j.element; import org.dom4j.io.saxreader; / ** * Parse Sys-Config.xml Fichier * @Author RonaldInho * * / public class xmlconfigReader {// Lazy private static xmlconfigreader instance = null; // Enregistrer JDBC Informations connexes privées jdbcconfig jdbcconfig = new JdbcConfig (); privé xmlconfigreader () {// Créer un objet SAXREDER SAXREDER Reader = new saxReader (); // Utilisez le chargeur de classe du thread actuel pour obtenir le chemin relatif du fichier et lisez le flux d'entrée tamponné InputStream dans = thread.currentThread (). GetContextClassLoader (). GetResourCeasStream ("Sys-Config.xml"); essayez {// lire le document de fichier XML via Stream Doc = Reader.Read (in); // LIRE JDBC INFORMATIONS RELATINES DriverNameelt = (élément) doc.selectObject ("/ config / db-info / driver-name"); Element urLelt = (élément) doc.selectObject ("/ config / db-info / url"); Element Usernameelt = (élément) doc.selectObject ("/ config / db-info / user-name"); Element MotwordElt = (élément) doc.selectObject ("/ config / db-info / mot de passe"); // Définit les informations connexes JDBC JDBCCONFIG.SetDrivername (Drivernameelt.getStringValue ()); jdbcconfig.setUrl (urlelt.getStringValue ()); jdbcconfig.setUsername (usernameelt.getStringValue ()); jdbcconfig.setpassword (mot de passelt.getStringValue ()); } catch (documentException e) {e.printStackTrace (); }} public static synchronisé xmlconfigReader getInstance () {if (instance == null) {instance = new xmlconfigreader (); } return instance; }}La méthode ci-dessus consiste à générer un objet via le singleton motif, qui instancie un saxreader, puis charge le fichier XML dans le flux. Convertissez-le ensuite en un objet de document via la méthode Read () de SaxReader. Utilisez ensuite cet objet de document pour obtenir la valeur du nœud dans le fichier XML.
Aujourd'hui, je présenterai brièvement l'utilisation de Dom4j pour lire les fichiers XML. Je vous parlerai d'autres usages plus tard. Ne vous inquiétez pas, tout le monde.
PS: Tout le monde est invité à critiquer et à me corriger!
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.