DOM和SAX之間的差異

2021-04-19 02:48:09 字數 432 閱讀 3400

有一些初始化資料以及測試資料,這些資料使用

xml檔案的方式儲存,所以需使用

dom4j

來解釋這些

xml文件,並將其中的資料初始化到資料庫中

他們都是

解析xml檔案的

dom一次全部讀進來

sax只會解析一點  

dom –

基於物件模型,在建立

document

物件的時候,就針對整個

xml文件生成了一顆節點樹(因為

xml的結構是樹狀的)

sax –

基於事件模型,在讀取

xml文件的過程中,發出一系列的事件(比如標籤開始、標籤結束、碰到注釋等等),需定義相關的事件處理器來處理這個文件。

SAX與DOM之間的區別

傳統的處理xml的api有dom和sax兩種,dom速度慢,占用記憶體極大。sax雖然比dom快,但速度任不理想。現在,一種新的基於流的stream api for xml 簡稱stax 極大地提高了xml的處理速度,並且已經稱為jsr 173標準 目前,stax最好的開源實現是woodstox 它...

SAX解析及SAX和DOM總結

dom解析器是將xml文件解析成樹狀模型並放入記憶體來完成解析工作的,而後對文件的操作都是在這個樹狀模型上完成的。這樣做的好處是結構清楚,操作方便。缺點極其耗費系統資源。不適用於解析超大型的xml檔案。sax解析器是通讀整個文件,根據文件內容產生事件,而把對這些事件的處理交由事件處理器處理。sax不...

DOM解析和SAX解析的區別

dom解析和sax解析的區別 no區 別dom解析sax解析1操作 將所有檔案讀取到記憶體中形成dom樹,如果檔案量過大,則無法使用 順序讀入所需要的檔案內容,不會一次性全部讀取,不受檔案大小的限制 2訪問限制 dom樹在記憶體中形成,可以隨意存放或讀取檔案樹的任何部分,沒有次數限制 由於採用部分讀...