国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

使用Java與XML進(jìn)行編程

2024-09-05 00:23:40
字體:
供稿:網(wǎng)友
從xml誕生之日起,它就一直是業(yè)界的焦點話題之一。經(jīng)過了幾年的發(fā)展,XML技術(shù)日趨成熟,現(xiàn)在越來越多的應(yīng)用都是基于XML開發(fā)的。在Internet日益普及的今天,分布式編程日顯重要,越來越多的應(yīng)用都開始向這一方向轉(zhuǎn)型。在這一領(lǐng)域中,XML作為一種中間的數(shù)據(jù)接口,已經(jīng)顯示出其不可替代的重要性。與此同時,java語言開發(fā)Internet分布式應(yīng)用程序的潛力也被越來越多的人看好,EJB體系結(jié)構(gòu)也日漸成熟。利用Java,人們可以很迅速的開發(fā)出可移植的、彈性好的、易于治理的分布式應(yīng)用程序。
  Java語言一直都被認(rèn)為是最適合進(jìn)行XML編程的語言之一。與平臺無關(guān)的語言Java加上與平臺無關(guān)的數(shù)據(jù)XML,確實能夠完成最為復(fù)雜且彈性最好的分布式應(yīng)用。
  在Java應(yīng)用中引入XML,其實并不是很難,而且已經(jīng)有諸多規(guī)范和諸多的類庫開發(fā)出來,以簡化Java中的XML的編程。在這些規(guī)范中,最為流行的就是SAX和DOM,后者也是W3C所推薦的標(biāo)準(zhǔn)。而支持XML的Java類庫更是不勝枚舉,除了Sun所發(fā)布的JXAP之外,還有像IBM、Microsoft等巨頭所提供的類似產(chǎn)品。而且,這些產(chǎn)品大多都是免費的,用起來不用花一分錢。所有的這些規(guī)范和類庫,已經(jīng)在很大程度上簡化了XML編程的復(fù)雜系數(shù),你只需要了解這些規(guī)范和JXAP所定義的API,就已經(jīng)能夠進(jìn)行XML編程了。而我們這篇文章的目的,也就是為大家介紹這些規(guī)范和API。相信讀完本文后,您就不會再認(rèn)為XML編程是多么困難的事了。
  背景知識
  關(guān)于XML的討論已經(jīng)很多了,對于XML的看法也是見仁見智。要給XML下一個確切的定義是一件很困難的事情,但我們可以從下面四個方面來看:
  1.XML是一種被設(shè)計成方便的用來在Internet上傳播的標(biāo)記語言。XML與SGML兼容(確切的說是SGML的一個簡化了的子集),并且能夠很輕易的在任何文本編輯器中進(jìn)行瀏覽和編輯。
  2.XML用來定義數(shù)據(jù)的邏輯結(jié)構(gòu),用樹的方式將所有的數(shù)據(jù)組織起來,這使得XML文檔很輕易理解和處理。而XML文檔的結(jié)構(gòu)是通過DTD或者Schema預(yù)先定義的,這使得XML中的數(shù)據(jù)在特定的應(yīng)用中都能夠有確切的含義。
  3.XML是一種定義嚴(yán)格的語言,它幾乎沒有定義什么可選的特性。這使得XML達(dá)到了最大程度的通用性,任何與XML兼容的解析器都可以對一個合法的XML文檔進(jìn)行解析而不會出現(xiàn)任何錯誤。這樣,XML就能夠作為一種最廣義的中介,在各種平臺,各種語言和各種程序中流通。
  
  4.XML是一種用來定義數(shù)據(jù)和原數(shù)據(jù)的語法,這就使得你能夠定義數(shù)據(jù)本身。這也是XML最重要的特性之一,因為從理論上講,任何東西都可以用數(shù)據(jù)進(jìn)行描敘。也就是說,由于XML提供了描敘數(shù)據(jù)的方法,因而也就具備了描敘任何事物的能力。
  關(guān)于XML的應(yīng)用,我們舉一個簡單的例子來看看它的威力所在。
  現(xiàn)在的大部分網(wǎng)站都是用Html編寫的。網(wǎng)頁設(shè)計師們精心設(shè)計的網(wǎng)頁,能夠在Web瀏覽器上很漂亮的顯示出來,但是假如想把這些網(wǎng)頁所包含的內(nèi)容重新設(shè)計在一本書中的話,顯然,瀏覽器上的漂亮內(nèi)容就不能很方便的在書中體現(xiàn)出來了。我們知道,HTML是一種結(jié)構(gòu)性很差的語言,它將顯示和內(nèi)容緊密的結(jié)合在一起,要將內(nèi)容有選擇的從HTML文件中分離出來是非常困難的,非凡是在那些設(shè)計精美的網(wǎng)頁中。這時候,或許唯一的辦法就是重新進(jìn)行設(shè)計了。但是,XML的出現(xiàn)為解決這種問題提供了一種良好的解決方案。
  
  因為XML只是定義數(shù)據(jù),它并不關(guān)心數(shù)據(jù)是如何顯示的,所以用XML設(shè)計出的網(wǎng)站其內(nèi)容和顯示是分離的。一般的網(wǎng)頁是通過XSLT對給定的XML文檔進(jìn)行變換之后生成的。現(xiàn)在我們要將網(wǎng)站的內(nèi)容放在一本書中,只需要重新定義XSLT,給出變化規(guī)則,就可以將內(nèi)容完美的再現(xiàn)在另外的一種形式中了。
  上面所講述的只是XML應(yīng)用的一個重要方面,實際上現(xiàn)在XML的應(yīng)用遠(yuǎn)遠(yuǎn)不止如此,很多協(xié)議比如SOAP,都是基于XML的。
  下面的內(nèi)容,就是具體的XML編程了。由于本文假定您已對Java語言(或者其它面向?qū)ο蟮恼Z言)有了一定的了解,因而對一些關(guān)于語言的細(xì)節(jié)問題,就不再贅述了
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 浦城县| 景东| 明溪县| 红原县| 平南县| 洛隆县| 天祝| 饶平县| 米易县| 攀枝花市| 宜城市| 依安县| 馆陶县| 崇州市| 庆阳市| 富锦市| 将乐县| 蓝山县| 家居| 云安县| 桓台县| 黄石市| 深水埗区| 抚远县| 龙井市| 龙山县| 潜江市| 晋江市| 五大连池市| 康定县| 黎川县| 镇平县| 宣武区| 华阴市| 耒阳市| 连州市| 石狮市| 东光县| 商洛市| 巴塘县| 会昌县|