999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java解析xml文件的研究與應用

2014-06-18 04:37:27張潔
新媒體研究 2014年6期

摘 要 在計算機領域,利用Java解析xml文件有著實際利用價值與現實意義。文章對XML語言進行了簡要的介紹,XML作為簡單的配置文件可以幫助我們更高效地運行程序。在介紹了XML的基本概念和主要應用的基礎上,進一步分析了Java解析XML文檔的兩種主流經典方法:一種是文檔對象模型DOM(Document Object Model),另外一種是XML簡單接口SAX(Simple API for XML)。

關鍵詞 XML作用;XML解析;DOM;Java;SAX

中圖分類號:TP311 文獻標識碼:A 文章編號:1671-7597(2014)06-0120-01

現代社會所使用的程序和數據越來越大,對計算機硬件的需求標準越來越高。當我們用到的數據量不大,對硬件的要求不高的時候,我們不希望再使用龐大的數據庫,而是希望能夠找到能夠減輕系統負擔的方法。XML作為簡單的配置文件可以幫助我們更高效地運行程序,它的獨立于平臺的特性是它最具特色的地方。XML可以將內容和表現分離,同一個xml源文檔只寫一次,但可以用不同的方法表現出來。

1 XML概述

1.1 XML簡介

可擴展標記語言(Extensible Markup Language,XML)是一種標記語言,它為文檔編碼格式定義了一系列的標準規則,這些規則簡單明了,不論是用戶還是機器都能夠很容易的識別。XML的設計目標是為了提高因特網信息的簡潔性、普適性和可用性。盡管XML最初主要用于文檔方面,但是現在它可以被廣泛地應用于任意數據結構的表示,比如web服務等。

根據定義,XML文檔是由一系列字符構成。在一個XML文檔中,幾乎每一個合法的Unicode字符都可能出現。XML允許使用任何Unicode-defined編碼,和任何其他也出現在Unicode編碼的字符。XML處理器還提供了一種機制,可以在沒有任何先驗知識的情況下非常可靠地確定哪些編碼可以使用。

XML文檔由標記和內容組成,它們可以通過簡單的語法規則進行區分。一般來說,標記以< >作為符號,即,而內容則不加任何符號。標記分為三類,是開始標記,是結束標記,開始標記和結束標記之間的部分作為內容。是空標記,即不包含任何內容的標記。

1.2 當前XML的主要應用

最近幾年已經用XML開發了數以百計的文檔格式,包括RSS、Atom、SOAP、XHTML等。基于XML格式的工具已經成為許多辦公軟件的默認工具,包括微軟辦公室(Office Open XML)、OpenOffice.org、LibreOffice和蘋果的iwork。XML也被用作通信協議的基本語言,比如XMPP。微軟的應用程序使用XML作為配置文件。蘋果公司已經實現了基于XML的注冊。

XML業已成為互聯網數據通信的主流方式之一。RFC3023規定了互聯網媒體用XML發送信息的構造方式。它還定義了以XML設計應用程序和以XML設計文檔的媒體類型。

XML具有如下特色:1)用來進行更有意義的搜索;2)開發靈活的Web應用軟件;3)集成不同來源的數據;4)多種應用得到的數據;5)數據的本地計算和處理;6)數據的多樣型顯示;7)數據的粒狀更新;8)在Web上發布數據;9)升級性;10)開放的標準。

2 Java解析XML的兩種經典方法

2.1 DOM:基于對象的XML解析技術

DOM是用與平臺和語言無關的方式表示XML文檔的W3C標準,它是以層次結構組織的節點或信息片斷的集合,它是一種基于樹型的解析技術,將XML文檔一次性解析,生成一個位于內存中的對象樹用以描述該文檔。

利用Java的DOM解析XML需要經過以下幾個步驟:1)得到DOM解析器的工廠實例;2)從DOM工廠獲得DOM解析器;3)把要解析的XML文檔轉化為輸入流;4)解析XML文檔的輸入流;5)得到XML文檔的根節點;6)得到節點的子節點;7)取得節點的屬性值;8)輪循子節點。

2.2 SAX:基于事件驅動的XML解析技術

SAX解析器采用了基于事件的模型,與DOM不同的是它并不是由W3C官方所提出的標準。SAX是一種輕量型的方法,它不需要將數據全部載入內存而只在讀取數據時檢查數據。對于大型文檔具有顯著優勢。它按照XML文件的順序一步一步的來解析,它將XML文檔分解為一系列的事件,由獨立的事件處理器來決定處理方式。

在JAVA的SAX接口中,事件源是org.xml.sax包中的XMLReader,它通過parser()方法來解析XML文檔,并根據文檔的內容產生事件。而事件處理器則是org.xml.sax包中的ContentHander、DTDHander、ErrorHandler,以及EntityResolver這4個接口,它們分別處理事件源在解析XML文檔過程中產生的不同種類的事件。

2.3 兩種解析方式的對比

SAX解析器是基于事件驅動的,無需將整個文檔載入內存,系統開銷低;不需要獲知整個XML數據,使用者只需要監聽自己感興趣的事件即可,處理速度快。但不能隨機訪問XML中的節點,只支持順序訪問,而且不能修改文檔。

DOM解析器把XML文檔轉化為一個包含其內容的樹,將整棵樹讀入內存中,可以對樹進行遍歷,可以對XML文檔隨機訪問,可以修改文檔,而且操作要比SAX簡單,容易上手。然而由于使用DOM解析器的時候需要將整個文檔一次性解析完,內存代價比較高,相對于SAX解析器,對于大文檔的成本要高得多。

3 總結

XML具有重要的作用,DOM和SAX這兩種解析技術也是各有特點。我們在Java平臺上解析時,應該根據不同的需求選擇不同的解析方法。當應用程序對文檔的修改和隨機訪問比較多時,可以優先考慮DOM解析。SAX是讀取和操作XML數據的更快速、更輕量的方法。

參考文獻

[1]李剛.瘋狂XML講義[M].北京:電子工業出版社,2009.

[2]張迪,朱敏,張凌立.基于SAX的XML解析與應用[J].計算機與數字工程,2008,36(7):103-106.

[3]鄧超,熊選東.一種基于DOM的Web信息提取方法[J].微型電腦應用,2007,23(3): 49-52.

[4]邢詒俊.淺談XML解析技術[J].華南金融電腦,2009(11):51-52.

作者簡介

張潔(1981-),女,鎮江高等職業技術學校二級教師。

主站蜘蛛池模板: 永久免费无码成人网站| 黄色网页在线观看| 久久这里只有精品8| 国产在线视频导航| 欧美日韩国产精品综合| 久久国产亚洲偷自| 免费人成又黄又爽的视频网站| 久草网视频在线| 九九久久精品国产av片囯产区| 玖玖免费视频在线观看| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 国产网站在线看| 中国毛片网| 亚洲天堂久久| 欧美日韩高清在线| 女人18毛片一级毛片在线 | 九九九精品成人免费视频7| 尤物亚洲最大AV无码网站| 91免费片| 亚洲一级毛片在线观| 免费观看精品视频999| 露脸真实国语乱在线观看| 久久www视频| 成人韩免费网站| 99er精品视频| 国产欧美精品一区aⅴ影院| 国产精品黑色丝袜的老师| 国产精品亚洲va在线观看 | 亚洲最大看欧美片网站地址| 在线永久免费观看的毛片| 婷婷午夜天| 91免费国产在线观看尤物| 一级毛片基地| 久久一色本道亚洲| 国产精品女熟高潮视频| 亚洲品质国产精品无码| 精品一区国产精品| 欧美日韩中文字幕在线| 久久久久九九精品影院 | 亚洲av无码片一区二区三区| 亚洲欧美日韩成人在线| 91精品啪在线观看国产91九色| 一级毛片免费观看久| 亚洲欧美一区二区三区蜜芽| 一级成人欧美一区在线观看| 日本a级免费| 国产精品护士| 91在线丝袜| 99热国产这里只有精品9九| 亚洲色图综合在线| 国产女人爽到高潮的免费视频| 看国产毛片| 久久动漫精品| 中国精品久久| 国产第一福利影院| 97av视频在线观看| 一区二区三区精品视频在线观看| 国产打屁股免费区网站| 色婷婷成人网| 性网站在线观看| 色综合a怡红院怡红院首页| 97在线公开视频| 极品av一区二区| 欧美成人国产| 久久精品91麻豆| 狠狠色噜噜狠狠狠狠奇米777| 亚洲色偷偷偷鲁综合| 五月婷婷导航| 无套av在线| 国产精品嫩草影院av| 午夜性刺激在线观看免费| 国产97公开成人免费视频| 精品少妇人妻av无码久久| 国产亚洲日韩av在线| 黄片一区二区三区| 国产精品99在线观看| 国产福利一区视频| 亚洲第一区在线| 色婷婷电影网| 91口爆吞精国产对白第三集| 国产对白刺激真实精品91| 午夜不卡福利|