国产毛片一区二区三区女同性恋_日韩欧洲区精品一区二区_乱人伦中文视频在线观看_五月天在线视频国产在线下载_挺进邻居丰满少妇的身体_国产乱子伦精品免费视频_国产精品无码一区二区A∨白浆_操女生在线观看免费观看视频_影音先锋av每日最新久久_婷婷五月精品综合一区

186-0984-0880
 
網(wǎng)站建設(shè):如何在JAVA中解析XML格式文檔
日期:12-07 瀏覽次數(shù):15

 可擴(kuò)展標(biāo)記語言 (Extensible Markup Language, XML) ,用于標(biāo)記電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言,可以用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對(duì)自己的標(biāo)記語言進(jìn)行定義的源語言。 XML是標(biāo)準(zhǔn)通用標(biāo)記語言 (SGML) 的子集,非常適合 Web 傳輸。XML 提供統(tǒng)一的方法來描述和交換獨(dú)立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)?!?/p>

 
    XML現(xiàn)在已經(jīng)成為一種通用的數(shù)據(jù)交換格式,它的平臺(tái)無關(guān)性,語言無關(guān)性,系統(tǒng)無關(guān)性,給數(shù)據(jù)集成與交互帶來了極大的方便。對(duì)于XML本身的語法知識(shí)與技術(shù)細(xì)節(jié),需要閱讀相關(guān)的技術(shù)文獻(xiàn),這里面包括的內(nèi)容有DOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API for XML),XSD(Xml Schema Definition),XSLT(Extensible Stylesheet Language Transformations。主要包括以下四個(gè)方面:
 
    1.DOM生成和解析XML文檔
 
為XML文檔的已解析版本定義了一組接口。解析器讀入整個(gè)文檔,然后構(gòu)建一個(gè)駐留內(nèi)存的樹結(jié)構(gòu),然后代碼就可以使用 DOM 接口來操作這個(gè)樹結(jié)構(gòu)。優(yōu)點(diǎn):整個(gè)文檔樹在內(nèi)存中,便于操作;支持刪除、修改、重新排列等多種功能;缺點(diǎn):將整個(gè)文檔調(diào)入內(nèi)存(包括無用的節(jié)點(diǎn)),浪費(fèi)時(shí)間和空間;使用場合:一旦解析了文檔還需多次訪問這些數(shù)據(jù);硬件資源充足(內(nèi)存、CPU)。
 
    2.SAX生成和解析XML文檔
 
    為解決DOM的問題,出現(xiàn)了SAX。SAX ,事件驅(qū)動(dòng)。當(dāng)解析器發(fā)現(xiàn)元素開始、元素結(jié)束、文本、文檔的開始或結(jié)束等時(shí),發(fā)送事件,程序員編寫響應(yīng)這些事件的代碼,保存數(shù)據(jù)。優(yōu)點(diǎn):不用事先調(diào)入整個(gè)文檔,占用資源少;SAX解析器代碼比DOM解析器代碼小,適于Applet,下載。缺點(diǎn):不是持久的;事件過后,若沒保存數(shù)據(jù),那么數(shù)據(jù)就丟了;無狀態(tài)性;從事件中只能得到文本,但不知該文本屬于哪個(gè)元素;使用場合:Applet;只需XML文檔的少量內(nèi)容,很少回頭訪問;機(jī)器內(nèi)存少。
 
    3.DOM4J生成和解析XML文檔
 
    DOM4J 是一個(gè)非常非常優(yōu)秀的Java XML API,具有性能優(yōu)異、功能強(qiáng)大和極端易用使用的特點(diǎn),同時(shí)它也是一個(gè)開放源代碼的軟件。如今你可以看到越來越多的 Java 軟件都在使用 DOM4J 來讀寫 XML,特別值得一提的是連 Sun 的 JAXM 也在用 DOM4J。
 
    4.JDOM生成和解析XML
 
    為減少DOM、SAX的編碼量,出現(xiàn)了JDOM;優(yōu)點(diǎn):20-80原則,極大減少了代碼量。使用場合:要實(shí)現(xiàn)的功能簡單,如解析、創(chuàng)建等,但在底層,JDOM還是使用SAX(常用)、DOM、Xanan文檔。
 
    具體方法如下:
 
    package com.alisoft.facepay.framework.bean;
 
    /**
 
    *
 
    * @author hongliang.dinghl
 
    * 定義XML文檔建立與解析的接口
 
    */
 
    public interface XmlDocument {
 
    /**
 
    * 建立XML文檔
 
    * @param fileName 文件全路徑名稱
 
    */
 
    public void createXml(String fileName);
 
    /**
 
    * 解析XML文檔
 
    * @param fileName 文件全路徑名稱
 
    */
 
    public void parserXml(String fileName);
 
    }
 
    XML在不同的語言里解析方式都是一樣的,只不過實(shí)現(xiàn)的語法不同而已?;镜慕馕龇绞接袃煞N,一種叫SAX,另一種叫DOM。SAX是基于事件流的解析,DOM是基于XML文檔樹結(jié)構(gòu)的解析。假設(shè)我們XML的內(nèi)容和結(jié)構(gòu)如下:
 
    ddviplinux
 
    m
 
    30
 
    XML與Access,Oracle和SQL Server等數(shù)據(jù)庫不同,數(shù)據(jù)庫提供了更強(qiáng)有力的數(shù)據(jù)存儲(chǔ)和分析能力,例如:數(shù)據(jù)索引、排序、查找、相關(guān)一致性等,XML僅僅是存儲(chǔ)數(shù)據(jù)。事實(shí)上XML與其他數(shù)據(jù)表現(xiàn)形式大的不同是:他極其簡單。這是一個(gè)看上去有點(diǎn)瑣細(xì)的優(yōu)點(diǎn),但正是這點(diǎn)使XML與眾不同。
 

← 上一篇 下一篇 → 返回首頁
如有意向,請(qǐng)聯(lián)系我們的客戶經(jīng)理
我們會(huì)根據(jù)您的需求為你制定詳細(xì)的解決方案
在線咨詢 or 撥打業(yè)務(wù)熱線:186-0984-0880
在線咨詢
熱線電話
解決方案
掃一掃

掃一掃
關(guān)注新圖聞科技

全國咨詢熱線
186-0984-0880

返回頂部