四種xml的解析方式

2022-09-16 14:45:12 字數 690 閱讀 9852

比較:

1. dom4j效能最好,連sun的jaxm也在用dom4j。目前許多開源專案中大量採用dom4j,例如大名鼎鼎的hibernate也用dom4j來讀取xml配置檔案。如果不考慮可移植性,那就採用dom4j.

2. jdom和dom在效能測試時表現不佳,在測試10m文件時記憶體溢位,但可移植。在小文件情況下還值得考慮使用dom和jdom.雖然jdom的開發者已經說明他們期望在正式發行版前專注效能問題,但是從效能觀點來看,它確實沒有值得推薦之處。另外,dom仍是乙個非常好的選擇。dom實現廣泛應用於多種程式語言。它還是許多其它與xml相關的標準的基礎,因為它正式獲得w3c推薦(與基於非標準的j**a模型相對),所以在某些型別的專案中可能也需要它(如在j**ascript中使用dom)。

3. sax表現較好,這要依賴於它特定的解析方式-事件驅動。乙個sax檢測即將到來的xml流,但並沒有載入到記憶體(當然當xml流被讀入時,會有部分文件暫時隱藏在記憶體中)。

我的看法:如果xml文件較大且不考慮移植性問題建議採用dom4j;如果xml文件較小則建議採用jdom;如果需要及時處理而不需要儲存資料則考慮sax。但無論如何,還是那句話:適合自己的才是最好的,如果時間允許,建議大家講這四種方法都嘗試一遍然後選擇一種適合自己的即可。

XML的四種解析方式

測 試 這種處理的優點非常類似於流 的優點。分析能夠立即開始,而不是等待所有的資料被處理。而且,由於應用程式只是在讀取資料時檢查資料,因此不需要將資料儲存在記憶體中。這對於大型文件來說是個巨大的優點。事實上,應用程式甚至不必解析整個文件 它可以在某個條件得到滿足時停止解析。一般來說,sax 還比它的...

XML檔案四種解析方式對比

dom在解析時,會將xml檔案中的所有內容一次性載入到記憶體中,並形成乙個dom樹。優點形成了樹結構,直觀好理解,更易於編寫 解析過程中樹的結構儲存在記憶體中,方便修改。缺點 當xml檔案較大時,記憶體消耗比較大,容易影響解析效能並造成記憶體溢位。sax解析是基於事件驅動的解析方式。優點採用事件驅動...

Java中四種XML解析技術

在平時工作中,難免會遇到把 xml 作為資料儲存格式。面對目前種類繁多的解決方案,哪個最適合我們呢?在這篇文章中,我對這四種主流方案做乙個不完全評測,僅僅針對遍歷 xml 這塊來測試,因為遍歷 xml 是工作中使用最多的 至少我認為 預 備 測試環境 amd 毒龍1.4g oc 1.5g 256m ...