JavaでのXMLの解析。 DOM対 サックス

最後にこのメモを書き始めました。

前の記事で、私はSAXテクノロジーを使用して最も単純なxmlパーサーを作成することについて書きました。

労働者の要請で、彼はこのシリーズの次号を作成しました。 SAXとDOMのパフォーマンスの比較。



思い出させてください。

医者を説明するデータ構造であるxmlファイルがありました。

ここにあります:

<? xml version ="1.0" encoding ="UTF-8" standalone ="no" ? >

< doc >

< id > 3 </ id >

< fam > </ fam >

< name > </ name >

< otc > </ otc >

< dateb > 12-05-1976 </ dateb >

< datep > 13-04-2005 </ datep >

< datev > 02-03-2004 </ datev >

< datebegin > 18-06-2009 </ datebegin >

< dateend > 22-01-2022 </ dateend >

< vdolid > 1 </ vdolid >

< specid > 1 </ specid >

< klavid > 1 </ klavid >

< stav > 1.0 </ stav >

< progid > 1 </ progid >

</ doc >




* This source code was highlighted with Source Code Highlighter .








この奇跡はすべて411バイトの重さです。

テストを簡単にすることにしました。 このファイルをループでN回解析しました。

チャートを見てみましょう。

画像

注:垂直方向にはミリ秒単位の時間があり、水平方向には情報量でマークされます(フォーマットN * 411、Nはxmlファイルが実行された回数です)。



好奇心urious盛です。 処理される情報の量が多いほど、DOMの動作が長くなります。 このような背景に対して、SAXは、大容量で速度が必要な場合に非常に有利に見えます。



いずれにせよ、ホリバーを繁殖させないために、結論を導きたくありません。 方法を選択する際には、常識を使い目標を設定する必要があるとしか言えません。



All Articles