小編給大家分享一下Java中Javasax解析器有什么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
SAX(針對(duì)XML的簡(jiǎn)單API)是基于事件為XML文檔的解析器。不像DOM解析器,SAX解析器創(chuàng)建沒(méi)有解析樹(shù)。SAX是一個(gè)流接口用于XML的,這意味著使用SAX應(yīng)用接收事件通知有關(guān)XML文檔被處理的元素,屬性,在按順序每次開(kāi)始在文檔的頂部,并與所述閉合結(jié)束根元素。
讀取XML文件從上到下,構(gòu)成一個(gè)結(jié)構(gòu)完整的XML文檔的標(biāo)記
令牌以相同的順序進(jìn)行處理,它們出現(xiàn)在文檔中
報(bào)告應(yīng)用程序,因?yàn)樗鼈兯霈F(xiàn)解析器遇到標(biāo)記的特性
應(yīng)用程序提供了必須的解析器注冊(cè)的“事件”處理程序
作為標(biāo)記標(biāo)識(shí),在處理程序回調(diào)方法相關(guān)信息調(diào)用
什么時(shí)候使用?
應(yīng)該使用SAX解析器的時(shí)候:
可以在XML文檔從上往下處理以線性方式
該文件并不深層次嵌套
處理一個(gè)非常大的XML文檔,DOM樹(shù)會(huì)占用太多的內(nèi)存。典型DOM的實(shí)現(xiàn)使用10字節(jié)的存儲(chǔ)器以表示XML的一個(gè)字節(jié)
解決的問(wèn)題涉及的XML文檔的一部分
數(shù)據(jù)是可用的,只要它是由解析器看出,這樣的SAX可以很好地用于到達(dá)流的XML文檔
SAX的缺點(diǎn)
它是在一個(gè)只進(jìn)入處理隨機(jī)訪問(wèn)方式XML文檔
如果需要跟蹤的數(shù)據(jù)分析器已經(jīng)看到或更改項(xiàng)目的順序,必須自已編寫代碼和數(shù)據(jù)存儲(chǔ)
ContentHandler接口
此接口指定SAX解析器用來(lái)通知XML文檔,已經(jīng)看到部件應(yīng)用程序的回調(diào)方法。
voidstartDocument()-調(diào)用在一個(gè)文件的開(kāi)頭。
voidendDocument()-調(diào)用在一個(gè)文件的末尾。
voidstartElement(Stringuri,StringlocalName,StringqName,Attributesatts)-調(diào)用在一個(gè)元素的開(kāi)頭。
voidendElement(Stringuri,StringlocalName,StringqName)-調(diào)用在一個(gè)元件的末端。
voidcharacters(char[]ch,intstart,intlength)-字符數(shù)據(jù)出現(xiàn)時(shí)調(diào)用。
voidignorableWhitespace(char[]ch,intstart,intlength)-當(dāng)DTD是當(dāng)前和忽略空白遇到時(shí)調(diào)用。
voidprocessingInstruction(Stringtarget,Stringdata)-當(dāng)處理指令的認(rèn)可時(shí)調(diào)用。
voidsetDocumentLocator(Locatorlocator))-提供可用于識(shí)別文檔中的位置的定位器。
voidskippedEntity(Stringname)-一個(gè)尚未解決實(shí)體遇到時(shí)調(diào)用。
voidstartPrefixMapping(Stringprefix,Stringuri)-當(dāng)一個(gè)新的命名空間的映射定義調(diào)用。
voidendPrefixMapping(Stringprefix)-當(dāng)一個(gè)命名空間定義結(jié)束其范圍時(shí)調(diào)用。
屬性接口
這種接口指定用于處理連接到一個(gè)元素的屬性的方法。
intgetLength()-返回屬性的數(shù)目。
StringgetQName(intindex)
StringgetValue(intindex)
StringgetValue(Stringqname)
以上是“Java中Javasax解析器有什么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)站欄目:Java中Javasax解析器有什么用-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://chinadenli.net/article28/dhjgcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站維護(hù)、全網(wǎng)營(yíng)銷推廣、品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容