Java XML API

2018-02-12 18:27 更新

Java XML教程 - Java XML API

SAX API

下面是關(guān)鍵的SAX API的摘要:

用法
SAXParserFactory創(chuàng)建由系統(tǒng)屬性javax.xml.parsers.SAXParserFactory確定的解析器的實例。
SAXParserSAXParser接口定義了幾個重載的parse()方法。
SAXReaderSAXParser包裝一個SAXReader,并從SAXParser的getXMLReader()方法返回。
DefaultHandlerDefaultHandler實現(xiàn)了ContentHandler,ErrorHandler,DTDHandler,和EntityResolver接口。 通過使用DefaultHandler,我們可以只覆蓋我們需要的那些。
ContentHandler此接口定義回調(diào)方法,如startDocument,endDocument,startElement和endElement。 這些方法在識別XML標記時調(diào)用。它還定義了被調(diào)用的方法characters()當解析器遇到XML元素中的文本時。它定義被調(diào)用的processingInstruction()當解析器遇到內(nèi)聯(lián)處理指令時。
ErrorHandler它使用error(),fatalError()和warning()方法來響應(yīng)各種解析錯誤。 默認的錯誤處理程序只會拋出致命錯誤和的異常忽略驗證錯誤。
DTDHandler用于處理DTD
EntityResolver它的resolveEntity()方法用于標識數(shù)據(jù)。

我們通常實現(xiàn)大多數(shù) ContentHandler 方法。

為了提供更穩(wěn)健的實現(xiàn),我們可以從ErrorHandler實現(xiàn)方法。


SAX包

SAX解析器在下表中列出的軟件包中定義。

描述
org.xml.sax定義SAX接口。
org.xml.sax.ext定義用于更高級SAX處理的SAX擴展。
org.xml.sax.helpers定義SAX API的輔助類。
javax.xml.parsers定義SAXParserFactory類,它返回SAXParser。

DOM API

javax.xml.parsers.DocumentBuilderFactory 類返回一個 DocumentBuilder 實例。

我們使用 DocumentBuilder 實例來產(chǎn)生一個 Document 對象退出XML文檔。

構(gòu)建器由系統(tǒng)屬性 javax.xml.parsers.DocumentBuilderFactory 確定。

DocumentBuilder 中的 newDocument()方法可以創(chuàng)建一個實現(xiàn) org.w3c.dom.Document 接口的空Document。

我們可以使用其中一個構(gòu)建器的解析方法來創(chuàng)建一個 Document 從現(xiàn)有的XML文檔。


DOM包

文檔對象模型實現(xiàn)在中定義下表中列出的軟件包。

描述
org.w3c.dom定義XML文檔的DOM編程接口。
javax.xml.parsers定義DocumentBuilderFactory類和DocumentBuilder類。

XSLT API

TransformerFactory 創(chuàng)建一個 Transformer 對象。

XSLT API在下表中顯示的包中定義。

描述
javax.xml.transform定義TransformerFactory和Transformer類。 我們可以從變換器對象調(diào)用transform()方法來進行變換。
javax.xml.transform.dom用于從DOM創(chuàng)建輸入和輸出對象的類。
javax.xml.transform.sax用于從SAX解析器創(chuàng)建輸入對象和從SAX事件處理程序輸出對象的類。
javax.xml.transform.stream用于從I / O流創(chuàng)建輸入對象和輸出對象的類。

StAX APIs

StAX為開發(fā)人員提供了SAX和DOM解析器的替代方法。

StAX可以用更少的內(nèi)存進行高性能流過濾,處理和修改。

StAX是用于流式XML處理的標準的雙向拉解析器接口。

StAX提供比SAX更簡單的編程模型,并且比DOM更高的內(nèi)存效率。

StAX可以解析和修改XML流作為事件。

StAX包

StAX APIs在下表中顯示的包中定義。

描述
javax.xml.stream定義迭代XML文檔元素的XMLStreamReader接口。 定義XMLStreamWriter接口,指定如何寫入XML。
javax.xml.transform.stax提供StAX特定的轉(zhuǎn)換API。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號