sys-config.xml

  1. xml version="1.0" encoding="UTF-8"?> 
  2. <config> 
  3.     <db-info> 
  4.         <driver-name>oracle.jdbc.driver.OracleDriverdriver-name> 
  5.         <url>jdbc:oracle:thin:@127.0.0.1:1521:orclurl> 
  6.         <user-name>scottuser-name> 
  7.         <password>tigerpassword> 
  8.     db-info> 
  9. config> 

XmlConfigReader.java

 

   
   
   
   
  1.  
  2. package com.lcw.drp.util;  
  3. import java.io.File;  
  4. import java.util.List;  
  5.  
  6. import org.dom4j.Document;  
  7. import org.dom4j.DocumentException;  
  8. import org.dom4j.Element;  
  9. import org.dom4j.Node;  
  10. import org.dom4j.io.SAXReader;  
  11.  
  12. /**  
  13.  * 读取sys-config.xml文件  
  14.  * @author Administrator  
  15.  *  
  16.  */ 
  17. public class XmlConfigReader {  
  18.     String driverName;  
  19.     String url;  
  20.     String userName;  
  21.     String password;  
  22.  
  23.     XmlConfigReader() {  
  24.             readXml();  
  25.     }  
  26.  
  27.     public void readXml(){  
  28.         SAXReader reader = new SAXReader();  
  29.         Document doc = null;  
  30.         try {  
  31.             doc = reader.read(new File("src/com/lcw/drp/util/sys-config.xml"));  
  32.         } catch (DocumentException e) {  
  33.             e.printStackTrace();  
  34.         }  
  35.           
  36.         //1.取特定的节点  
  37.         Node node = null;  
  38.         node = doc.selectSingleNode("//config/db-info/driver-name");  
  39.         driverName = node.getText();  
  40.         node = doc.selectSingleNode("//config/db-info/url");  
  41.         url = node.getText();  
  42.         node = doc.selectSingleNode("//config/db-info/user-name");  
  43.         userName = node.getText();  
  44.         node = doc.selectSingleNode("//config/db-info/password");  
  45.         password = node.getText();  
  46.  
  47.           
  48.         Element rootElem = doc.getRootElement();  
  49.         //2.取特定的节点  
  50.         List list = doc.selectNodes("//config/db-info");  
  51.         for(Node n : list) {  
  52.             System.out.println(n.getName());  
  53.         }  
  54.           
  55.           
  56.         //3.取节点再取节点的内容  
  57.         for ( Iterator i = rootElem.elementIterator(); i.hasNext(); ) {  
  58.            Element element = (Element) i.next();  
  59.            for(Iterator j = element.elementIterator(); j.hasNext();) {  
  60.                Element elem = (Element) j.next();  
  61.                System.out.println("        " + elem.getName() + "----"+ elem.getData());  
  62.            }  
  63.            //用Attribute时候不能运行,待解决  
  64.  //        for(Iterator j = element.attributeIterator(); j.hasNext();) {  
  65.  //         Attribute attribute = (Attribute) j.next();  
  66.  //            System.out.println("        " + attribute.getName() + "----"+ attribute.getValue());  
  67.  //         }  
  68.         }  
  69.     }  
  70. }