jdom读取xml

来源:互联网 发布:淘宝打单子视频教程 编辑:程序博客网 时间:2024/06/05 04:29

使用jdom读取xml文件

maven 依赖:

<dependency>
   <groupId>jdom</groupId>
   <artifactId>jdom</artifactId>
   <version>1.1</version>
</dependency>


[java] view plain copy
  1. package com.zona.dom;  
  2.   
  3. import java.util.List;  
  4.   
  5. import org.jdom.Document;  
  6. import org.jdom.Element;  
  7. import org.jdom.input.SAXBuilder;  

  8.  
  9. public class ReadDom {  
  10.   
  11.     public void parserXml(String fileName, String elementName, String idName) throws Throwable {  
  12.           
  13.         SAXBuilder builder = new SAXBuilder(false);  
  14.         Document document = builder.build(fileName);  
  15.         // 获取根元素  
  16.         Element root = document.getRootElement();  
  17.         // 获取根元素指定名字的子节点, 可以将其请转为Element对象操作属性, 值等。  
  18.         List<Element> list = root.getChildren(elementName);  
  19.         String username = null;  
  20.         String password = null;  
  21.         String driveName = null;  
  22.         String url = null;  
  23.         for (Element element : list) {  
  24.             String idValue = element.getAttributeValue("id");  
  25.             if (!idName.equals(idValue)) {  
  26.                 continue;  
  27.             }  
  28.             List<Element> secChildren = element.getChildren();  
  29.             for (Element second : secChildren) {  
  30.                 // 获取name属性的值  
  31.                 String current = second.getAttributeValue("name");  
  32.                 if ("driver-name".equals(current)) {  
  33.                     // 获取该元素trim后的值  
  34.                     driveName = second.getTextTrim();  
  35.                 } else if ("password".equals(current)) {  
  36.                     password = second.getTextTrim();  
  37.                 } else if ("user".equals(current)) {  
  38.                     username = second.getTextTrim();  
  39.                 } else if ("url".equals(current)) {  
  40.                     url = second.getTextTrim();  
  41.                 }  
  42.             }  
  43.         }  
  44.         System.out.println(url + "; " + username + "; " + password + "; " + driveName);  
  45.   
  46.     }  
  47.   
  48.     public static void main(String[] args) throws Throwable {  
  49.         ReadDom demo = new ReadDom();  
  50.         demo.parserXml("dom.xml""datasource""oracle");  
  51.     }  
  52. }  
0 0