這篇文章將為大家詳細(xì)講解有關(guān)為什么XML對(duì)Web服務(wù)很重要,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括阿榮網(wǎng)站建設(shè)、阿榮網(wǎng)站制作、阿榮網(wǎng)頁(yè)制作以及阿榮網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,阿榮網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到阿榮省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!Web服務(wù)經(jīng)常從它的組件技術(shù)的角度來(lái)進(jìn)行描述。SOAP、UDDI、WSDL、xml以及HTTP各自組成了Web服務(wù)體系的一部分,它們都發(fā)揮了重要作用。讓我們看看XML技術(shù)對(duì)Web服務(wù)平臺(tái)的貢獻(xiàn)。
標(biāo)準(zhǔn)化
與其它Web服務(wù)技術(shù)相比,標(biāo)準(zhǔn)化是XML特色之一。XML提供了Web服務(wù)應(yīng)用程序之間傳輸數(shù)據(jù)的標(biāo)準(zhǔn)格式。萬(wàn)維網(wǎng)聯(lián)盟(W3C)管理XML標(biāo)準(zhǔn)并發(fā)布給全球的XML技術(shù)提供者,這就確保了XML產(chǎn)品的兼容性。
除了XML引擎和產(chǎn)品外還有XML文法(grammar)。每一個(gè)XML語(yǔ)法都是一種在某個(gè)特定問(wèn)題領(lǐng)域進(jìn)行數(shù)據(jù)格式化的標(biāo)準(zhǔn)方法。遵循并采用XML文法,你就可以使兩個(gè)應(yīng)用程序間通信的數(shù)據(jù)格式標(biāo)準(zhǔn)化。
接口協(xié)議
程序員在對(duì)接口進(jìn)行編程時(shí)經(jīng)常將它稱之為協(xié)議。從編程的角度出發(fā),接口在沒(méi)有暴露實(shí)現(xiàn)的情況下提供了編程結(jié)構(gòu)。如果使用DTD(文件類型定義)和大綱(schema),那么XML就有類似的特性。DTD和大綱都用來(lái)描述XML文檔的結(jié)構(gòu)以及XML文檔的建立規(guī)則。可以用一個(gè)(或者多個(gè))相關(guān)DTD(或者大綱)組織這樣的規(guī)則集合,我們稱之為XML文法。
XML文法不僅可以用于應(yīng)用程序之間通信的標(biāo)準(zhǔn)化,還可以為開(kāi)發(fā)者提供一個(gè)接口協(xié)議。換句話說(shuō),開(kāi)發(fā)者在創(chuàng)建一個(gè)需要使用XML文檔結(jié)構(gòu)的應(yīng)用程序時(shí),他不需要知道文檔是如何實(shí)現(xiàn)的(即實(shí)際的XML文檔)。DTD以及大綱描述了文檔的結(jié)構(gòu),它們可以作為開(kāi)發(fā)的接口協(xié)議。對(duì)DTD的任何改動(dòng)同時(shí)也改變了協(xié)議。
簡(jiǎn)化
XML文檔的另一個(gè)重要方面就是它的簡(jiǎn)化特性。我并沒(méi)有暗示XML的實(shí)現(xiàn)很簡(jiǎn)單,而是說(shuō)XML的概念和一般方法簡(jiǎn)單。例如,XML是基于文本文檔的,這就簡(jiǎn)化了打開(kāi)XML文檔并查看其內(nèi)容的過(guò)程。
用XML簡(jiǎn)化Web服務(wù)模型很方便,這一點(diǎn)也很重要。Web服務(wù)天然就比單獨(dú)的XML要復(fù)雜。假設(shè)XML和CORBA同樣復(fù)雜,而且其它Web服務(wù)技術(shù)的復(fù)雜度相同,那么Web服務(wù)技術(shù)就會(huì)變得非常笨重。但是通過(guò)使用簡(jiǎn)單的搭積木的方法,如XML、SOAP等等,我們可以控制Web服務(wù)的復(fù)雜度在一個(gè)可以容忍的范圍之內(nèi),這樣用它創(chuàng)建的應(yīng)用程序不至于難以控制。
封裝
封裝是我最喜歡的XML特性之一,在開(kāi)發(fā)Web服務(wù)的時(shí)候尤其如此。從本質(zhì)上來(lái)說(shuō),封裝指的是獲得一個(gè)或者多個(gè)數(shù)據(jù)塊(chunks of data)并把它們集合成一個(gè)簡(jiǎn)單對(duì)象(而不是幾個(gè)獨(dú)立對(duì)象)的概念。封裝與集合(aggregation)類似,但是它們之間有一個(gè)重要的差別,即封裝一般意味著它沒(méi)有外部依賴性。
你可以創(chuàng)建帶有外部依賴性的XML文檔;但是在事務(wù)Web服務(wù)模型(transactional Web services model)中,利用封裝會(huì)顯得更加明智。通過(guò)設(shè)計(jì)包裝了依賴性的XML解決方案,你一般都可以消除事務(wù)處理過(guò)程(交易)中的問(wèn)題。強(qiáng)迫在交易中定位外部數(shù)據(jù)并使其與XML數(shù)據(jù)一致的方法是有害的,尤其是在外部數(shù)據(jù)常常發(fā)生變動(dòng)的情況下。如果把數(shù)據(jù)封裝到XML文法中去,就交易獲得正確的數(shù)據(jù)。
關(guān)于“為什么XML對(duì)Web服務(wù)很重要”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。