在開發中編寫xml文件中,有些內容不想讓xml解析器解析執行,而是當作原始內容處理,遇到此種情況,可以將這些內容放在CDATA區域內,對於CDATA區域內的內容,xml解析器不會進行處理,而是原封不動的輸出。語法: <![CDATA[ 需要處理的內容 ]]>
xml約束:約束xml結構的條約
常用的約束技術:DTD約束、Schema約束
xml解析的兩種常用方式:dom解析、sax解析
兩種方式的優缺點比較:
dom解析對內存的消耗比較大,dom方式會將xml解析成一棵dom樹對象,裝載到內存中,當xml足夠大的時候(比如1個G),就會造成內存溢出,因此dom方式不適合解析大文檔。dom方式的優點是增刪改查比較方便,可以直接通過document對象調用要操作的節點進行操作。
sax解析是讀一行處理一行,讀一行處理一行,因此對內存沒有壓力。但缺點是sax解析不適合對文檔進行增刪改查。
總結:如果需要頻繁的對xml文檔進行增刪改查,請用dom解析;
如果只需要讀取xml內容,請用sax解析。
sax採用事件處理的機制解析xml,涉及兩部分:解析器和事件處理器。
創建出解析器後,就可以指定解析器去解析某個xml文檔。