天天看點

dom4j 解析xml 擷取元素的方式

public static Element getElementByNodeName(String name) {

    try {
      String text = null;
      Resource cr = new ClassPathResource("config.xml");
      // System.out.println(XMLUtils.class.getResource("/").getPath());
      SAXReader saxReader = new SAXReader();
      // 讀取檔案
      Document read = saxReader.read(cr.getInputStream());
      // 擷取根節點
      Element rootElement = read.getRootElement();
      // System.out.println(name);

      // 第一種方法擷取到database
      Element e=null;
      
      //e= rootElement.elementByID(name);
      
      // 第二種方法擷取到database

      //e = rootElement.element("database");
  
      // 第三種方式
      QName qname = new QName(name);
      e = rootElement.element(qname);

      return e;

    } catch (DocumentException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    return null;
  }      

這裡我們提供了三種方式來擷取element 注意的是第二種根據id 擷取的時候,裡面的ID 屬性需要大寫