**: 方式
模型原理
說明1說明2
tree-based api
domjdom dom4j
把xml檔案讀入,變成dom模型的一棵樹,然後查詢獲取自己想要的東西
xml檔案很大時會占用很大記憶體。
即速度慢,占用記憶體大
event-based api
push: sax
sax只能讀xml檔案。速度比dom快,但仍不理想
xml檔案很大時,又不需要進行隨機查詢的時候,適合採用此方式
pull:stax
sax不但能讀xml還能寫xml。速度很快
這裡,sax和stax的另外一點區別是: sax只能讀xml檔案. stax不但能讀xml檔案,而且還能寫xml檔案.
傳統的處理xml的api有dom和sax兩種,dom速度慢,占用記憶體極大。sax雖然比dom快,但速度任不理想。現在,一種新的基於流的 stream api for xml(簡稱 stax)極大地提高了xml的處理速度,並且已經稱為jsr 173標準(目前,stax最好的開源實現是woodstox(它完整地支援stax api。resin3.1也內建了stax的實現,但是並沒有支援所以的stax api。xfire在classpath上如果找到了stax api的定義,就會試圖定位乙個stax的實現。
===================
參考:
javaAPI解析XML檔案方法效率比較
兩種解析方式 1 dom document object model 文件物件模型 關鍵字 樹 document 優點 把xml檔案在記憶體中構造樹形結構,可以遍歷和修改節點 缺點 如果檔案比較大,記憶體有壓力,解析的時間會比較長 2 sax api for xml 基於xml的簡單api 關鍵字 ...
XML解析方式
在開發中編寫xml檔案中,有些內容不想讓xml解析器解析執行,而是當作原始內容處理,遇到此種情況,可以將這些內容放在 cdata 區域內,對於 cdata 區域內的內容,xml解析器不會進行處理,而是原封不動的輸出。語法 需要處理的內容 xml約束 約束 xml結構的條約 常用的約束技術 dtd約束...
解析XML檔案(SAX方式解析XML)
解析xml檔案 sax方式解析xml 對xml檔案解析有四種方法 dom sax jdom dom4j 現著重講一下sax解析xml檔案。1 通過一定的方式獲取檔名 獲得檔案路徑 string xmlfilepath ticanserviceaccess.getsystemsupportservic...