XML之DOM解析

1.xml解析方式:

DOM解析原理:xml解析器將xml文件加載到內(nèi)存象对,然后構(gòu)建出一個Document的樹狀圖罚舱,通過Document對象獲得樹上的節(jié)點對象袍啡,通過對節(jié)點的訪問獲得xml文檔的內(nèi)容匾灶。

1)JAXP 工具(oracle-sun公司官方)
2)JDOM工具(非官方)
3)Dom4J工具(非官方)--三大框架(默認讀取的工具就是Dom4j)
Dom4J工具:
導入dom4j的核心包【下載地址 密碼:9rh1】

SAX解析:

Sax 解析工具(oracle-sun公司官方)

2.搭建環(huán)境及演示:

新建Java項目
創(chuàng)建xml文件
寫入內(nèi)容

XML文件內(nèi)容:

<?xml version="1.0" encoding="UTF-8"?>
<contactList>
    <contact id="1">
        <name>某某</name>
        <age>20</age>
        <phone>15426354785</phone>
        <qq>1024557455</qq>
    </contact>
    <contact id="2">
        <name>張三</name>
        <age>44</age>
        <phone>17854213658</phone>
        <qq>1024532584</qq>
    </contact>
</contactList>
新建lib文件夾將dom4j-1.6.1.jar包導入
添加到構(gòu)建路徑
出現(xiàn)奶瓶標志表示導入成功
新建Java類

one.java代碼如下:

package com.one;

import java.io.File;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import org.junit.Test;
public class damo {

    @Test
    public void texs() throws Exception{
        //創(chuàng)建一個xml解析對象
        SAXReader reader = new SAXReader();
        //讀取xml文檔,返回Document對象
        Document dor= reader.read(new File("./src/one.xml"));
      //獲取根節(jié)點
        Element ele = dor.getRootElement();
      //調(diào)用方法
        getChildNode(ele);
    }
    private void getChildNode(Element elem){
        System.out.println(elem.getName());
        Iterator  <Node> it= elem.nodeIterator();
        while(it.hasNext()){
        Node node = it.next();
        if(node instanceof Element){
            Element el = (Element)node;
             //遞歸方法
            getChildNode(el);
        }
        }
    }
    
}

JUnit4方法
添加成功
獲取到標簽節(jié)點名稱
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鱼的,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子痘煤,更是在濱河造成了極大的恐慌凑阶,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件衷快,死亡現(xiàn)場離奇詭異宙橱,居然都是意外死亡,警方通過查閱死者的電腦和手機蘸拔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進店門师郑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人调窍,你說我怎么就攤上這事宝冕。” “怎么了陨晶?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵猬仁,是天一觀的道長帝璧。 經(jīng)常有香客問我,道長湿刽,這世上最難降的妖魔是什么的烁? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮诈闺,結(jié)果婚禮上渴庆,老公的妹妹穿的比我還像新娘。我一直安慰自己雅镊,他們只是感情好襟雷,可當我...
    茶點故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著仁烹,像睡著了一般耸弄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上卓缰,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天计呈,我揣著相機與錄音,去河邊找鬼征唬。 笑死捌显,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的总寒。 我是一名探鬼主播扶歪,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼摄闸!你這毒婦竟也來了善镰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤贪薪,失蹤者是張志新(化名)和其女友劉穎媳禁,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體画切,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡竣稽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了霍弹。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片毫别。...
    茶點故事閱讀 40,127評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖典格,靈堂內(nèi)的尸體忽然破棺而出岛宦,到底是詐尸還是另有隱情,我是刑警寧澤耍缴,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布砾肺,位于F島的核電站挽霉,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏变汪。R本人自食惡果不足惜侠坎,卻給世界環(huán)境...
    茶點故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望裙盾。 院中可真熱鬧实胸,春花似錦、人聲如沸番官。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽徘熔。三九已至门躯,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間近顷,已是汗流浹背生音。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留窒升,地道東北人。 一個月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓慕匠,卻偏偏與公主長得像饱须,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子台谊,可洞房花燭夜當晚...
    茶點故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容