1. Dom4Jjava
<students>
<student>
<name>吳飛</name>
<college>java學院</college>
<telephone>62354666</telephone>
<notes>男,1982年生,碩士,現就讀於北京郵</notes>
</student> mysql
</students>sql
第一步:建立解析器
SAXReader reader = new SAXReader();
第二步:Document對象:經過解析器read方法獲取
Document doc = reader.read("xxxx.xml");
第三步:獲取 xml根節點
Element root = doc.getRootElement();
第四步:遍歷解析子節點 url
遍歷 root根節點下的student子節點
for(Iterator iter = root.elementIterator();iter.hasNext();){
獲取 student 節點對象
Element stuElement = (Element)iter.next();
遍歷 stuElement 節點下的全部子節點:name,colleage,telephone,notes
for(Iterator innerIter = stuElement.elementIterator();innerIter.hasNext();){
獲取 student節點下的子節點對象
Element innerElement = (Element)innerIter.next(); xml
經過 innerElement 的 getName()獲取節點名稱,getStringValue()獲取節點值 對象
innerElement.getName();繼承
innerElement.getStringValue();事件
2.SAXelement
建立解析工廠get
SAXParserFactory saxParserFactory = SAXParaserFactory.newInstance();
建立解析器
SAXParser saxParser = saxParserFactory.newSAXParser();
執行parser方法,傳入兩個參數:xml文件路徑、事件處理器
saxParser.parser(「xxxx.xml」, new MyDefaultHander());
(4) 建立一個類 MyDefaultHander(),繼承 DefaultHander類,重寫三個方
a. startElement 獲取開始標籤,重要的兩個參數說明
qName:把標籤名稱返回
attributes:返回標籤中的屬性對象
b. character 獲取標籤文本內容
c. endElement 獲取結束標籤
3.Dom4j + xPath
<config>
<database-info>
<driver-name>com.mysql.jdbc.Driver</driver-name>
<url>jdbc:mysql://192.168.7.151:8080/home</url>
<user>root</user>
<password>123</password>
</database-info>
</config>
第一步:經過 SAXReader 獲取解析器
SAXReader reader = new SAXReader();
第二步:經過解析器的 read方法獲取Document對象
Document doc = reader.read(「sys-config.xml」);
第三步:經過 xpath 語法獲取driver-name 節點
Element driverNameElt = doc.selectObject(「/config/database-info/driver-name」);
String driverName= driverNameElt.getStringValue();