下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于可擴(kuò)展標(biāo)記語言的webweb發(fā)布系統(tǒng)
1web服務(wù)的發(fā)展現(xiàn)狀隨著信息技術(shù)的快速發(fā)展,網(wǎng)絡(luò)技術(shù)滲透到社會(huì)生活的各個(gè)領(lǐng)域,人們對(duì)web服務(wù)的需求也越來越高。從以前簡(jiǎn)單的靜態(tài)信息顯示到現(xiàn)在動(dòng)態(tài)交互的Web網(wǎng)頁的出現(xiàn),一系列相關(guān)的技術(shù)和開發(fā)語言也相繼問世。隨著目前電子商務(wù)的需求越來越廣泛,Web服務(wù)的發(fā)展趨向于復(fù)雜化、多樣化和智能化。人們希望能在自己的PC機(jī)、便攜機(jī)、WAP手機(jī)等終端上,通過簡(jiǎn)單的操作就能完成如信息查詢、股票交易、在線訂購、在線會(huì)議等功能,這給動(dòng)態(tài)網(wǎng)頁的發(fā)布帶來更高的技術(shù)要求。2生成多媒體web發(fā)布系統(tǒng)傳統(tǒng)的Web發(fā)布技術(shù)中,所有的內(nèi)容都以HTML的形式傳遞。瀏覽器將來自頁面的請(qǐng)求發(fā)送給HTTP服務(wù)器,這個(gè)請(qǐng)求會(huì)跟隨著一系列的參數(shù)名稱和值。服務(wù)器接收到請(qǐng)求后,會(huì)通過CGI腳本、ASP、JavaServlet等代碼動(dòng)態(tài)生成HTML來響應(yīng)請(qǐng)求。其過程如圖1所示。在這種傳統(tǒng)的動(dòng)態(tài)Web發(fā)布技術(shù)中,業(yè)務(wù)邏輯、數(shù)據(jù)和HTML顯示混雜在一起,使整個(gè)系統(tǒng)邏輯不清,不易于系統(tǒng)的設(shè)計(jì)維護(hù)。特別是在電子商務(wù)環(huán)境中,用戶希望得到個(gè)性化的服務(wù)。對(duì)于同一內(nèi)容,不同的用戶希望看到不同的部分,或者通過不同的終端設(shè)備以不同的方式顯示。對(duì)于這樣的情況,在傳統(tǒng)的動(dòng)態(tài)Web發(fā)布技術(shù)中只能對(duì)于不同的顯示進(jìn)行不同的編碼。這個(gè)編碼不僅是重新定義顯示方式的編碼,也包括業(yè)務(wù)邏輯處理和后臺(tái)數(shù)據(jù)訪問的編碼,這無疑進(jìn)行了很多重復(fù)的工作,而且使整個(gè)系統(tǒng)不易于維護(hù)和擴(kuò)充。3實(shí)現(xiàn)了數(shù)據(jù)的分離作為SGML子集的XML語言,不僅繼承了SGML的易擴(kuò)展性,而且還具有簡(jiǎn)單和易描述的特點(diǎn),它實(shí)現(xiàn)了數(shù)據(jù)內(nèi)容和顯示方式的分離。對(duì)于同一份XML描述的內(nèi)容,可以針對(duì)不同的顯示終端、不同的瀏覽器、不同的個(gè)性化顯示方式來分別實(shí)現(xiàn),而不改動(dòng)后臺(tái)的業(yè)務(wù)處理邏輯,這就彌補(bǔ)了傳統(tǒng)的動(dòng)態(tài)Web發(fā)布技術(shù)的不足。利用XML來實(shí)現(xiàn)動(dòng)態(tài)Web的發(fā)布,利用的主要技術(shù)是XMLDOM和XSL。(1)基于3d植物樹狀模型的自動(dòng)發(fā)布DOM是W3C為XML標(biāo)準(zhǔn)化了的一套應(yīng)用程序編程接口,是一種獨(dú)立于語言和平臺(tái)的定義,它在計(jì)算機(jī)的內(nèi)存中形成了一個(gè)樹狀模型。利用DOM中的對(duì)象,開發(fā)人員可以對(duì)樹狀模型進(jìn)行讀取、搜索、修改、添加和刪除等操作。使用DOM來進(jìn)行動(dòng)態(tài)Web的發(fā)布,可以從用戶登錄的身份或用戶向服務(wù)器發(fā)出的HTTP請(qǐng)求中得到用戶的個(gè)性化需求或頁面的顯示方式,并以此來解析源XML文檔得到顯示給用戶的目標(biāo)頁面。編寫使用DOM方法的Java代碼可以完全控制XML的轉(zhuǎn)換,但是對(duì)于每一步的轉(zhuǎn)換都必須通過編碼實(shí)現(xiàn),工作量大。(2)xllt和xpatXSL是一種基于XML的語言。它可以將XML文檔轉(zhuǎn)換為另一種XML文檔或轉(zhuǎn)換為XML文檔可翻譯的對(duì)象,如SVG,PDF等。利用XSL樣式表,可以在瀏覽器中定制用戶的個(gè)性化顯示頁面,并可以將同一份XML文檔描述的數(shù)據(jù)內(nèi)容顯示到不同的顯示終端上。與使用DOM方式來轉(zhuǎn)換XML文檔相比,XSL是一種編程更簡(jiǎn)單的方式,它不像DOM可以操縱樹狀模型,而只是描述了源XML文檔和目標(biāo)文檔之間的關(guān)系。它包括XSLT,XSLF和XPath三部分。XSLT著重于XML文檔轉(zhuǎn)換;而XSLF著重于格式對(duì)象;XPath則著重于從XML層次結(jié)構(gòu)上訪問節(jié)點(diǎn)。利用XSL引擎轉(zhuǎn)換XML文檔時(shí),首先要將被轉(zhuǎn)換的文檔轉(zhuǎn)換為一種內(nèi)部模型,這個(gè)內(nèi)部模型也是一個(gè)樹狀模型,它獨(dú)立于任何一種處理它的API。一種更通用的方式是結(jié)合以上兩種技術(shù)來實(shí)現(xiàn)動(dòng)態(tài)Web發(fā)布。在這種新的技術(shù)實(shí)現(xiàn)中,Web服務(wù)器訪問數(shù)據(jù)庫并完成業(yè)務(wù)邏輯操作,之后在Web服務(wù)器上生成一個(gè)XML文檔。Web服務(wù)器再根據(jù)不同的用戶、不同的瀏覽器、不同的終端來調(diào)用不同的XSL樣式表,將服務(wù)器上的XML文檔轉(zhuǎn)換為不同的格式并發(fā)送給客戶端瀏覽器。其處理過程(圖2)是將XML文檔的轉(zhuǎn)換放在服務(wù)器上完成,處理時(shí)也可以將這一轉(zhuǎn)換過程放在客戶端。Web服務(wù)器將業(yè)務(wù)邏輯操作完成后形成的XML文檔隨同與之相關(guān)的XSL樣式表一起發(fā)送給客戶端瀏覽器,由客戶端瀏覽器自行轉(zhuǎn)換。利用XML技術(shù)來實(shí)現(xiàn)動(dòng)態(tài)Web的發(fā)布,相對(duì)于傳統(tǒng)的發(fā)布技術(shù),有三點(diǎn)明顯的優(yōu)勢(shì):①由于顯示過程和業(yè)務(wù)處理邏輯分離,使整個(gè)系統(tǒng)結(jié)構(gòu)清晰,易實(shí)現(xiàn)模塊化設(shè)計(jì),減少重復(fù)工作。②系統(tǒng)易于維護(hù)。當(dāng)系統(tǒng)的業(yè)務(wù)邏輯發(fā)生變化時(shí),只要系統(tǒng)形成的XML文檔結(jié)構(gòu)保持不變,就無須改變客戶端的顯示代碼和執(zhí)行轉(zhuǎn)換的XSL樣式表。③系統(tǒng)擴(kuò)充方便。如果要新加一種個(gè)性化的顯示頁面或新增一種顯示終端,只需新增或修改一個(gè)XSL樣式表。由于XML是一種基于國(guó)際標(biāo)準(zhǔn)的獨(dú)立于平臺(tái)的語言,所以只要客戶端提供XML解析器,就能在任何軟硬件平臺(tái)上動(dòng)態(tài)顯示W(wǎng)eb頁面。4源rss滲出產(chǎn)生和轉(zhuǎn)換在利用XML動(dòng)態(tài)發(fā)布Web的技術(shù)實(shí)現(xiàn)中,XSL中的XSLT和XPath扮演著重要的角色。由于此時(shí)Web服務(wù)器得到用戶特殊顯示需求的方式與傳統(tǒng)的方式一樣,所以在這里假設(shè)Web服務(wù)器已通過某種方式得到了這種特殊需求。在XSLT中,樣式表包含了一套模板的規(guī)則集合。一個(gè)模板規(guī)則有兩個(gè)部分,包括匹配源樹狀模型中節(jié)點(diǎn)的模式以及實(shí)例化后組成部分目標(biāo)樹狀模型的模板。例如下面模板規(guī)則匹配了一個(gè)Book類型的元素:在XSLT中包括很多條件處理的元素,利用這些元素,可以對(duì)源文檔進(jìn)行過濾而形成多種目標(biāo)文檔。另外,為了完成更復(fù)雜的功能,可以在XSL樣式表中嵌入客戶端的腳本代碼。在客戶端轉(zhuǎn)換XML文檔比較簡(jiǎn)單,只要在源XML文檔中寫入如下語句就可以了:<xml-stylesheethref=″test.xsl″type=″text/xsl″?>客戶端瀏覽器收到從Web服務(wù)器發(fā)送過來的源XML文檔和XSL樣式表后將自行轉(zhuǎn)換,無須服務(wù)器的參與??紤]到用戶通過選擇在瀏覽器上查看源文件,便可以看到源XML文檔描述的全部數(shù)據(jù)內(nèi)容。因此,當(dāng)源XML文檔描述的部分?jǐn)?shù)據(jù)內(nèi)容對(duì)于某些人要保密時(shí),就不能將轉(zhuǎn)換放在客戶端瀏覽器中執(zhí)行,而只能在Web服務(wù)器端進(jìn)行轉(zhuǎn)換,并將轉(zhuǎn)換好的目標(biāo)文檔發(fā)送給客戶端瀏覽器顯示。在服務(wù)器端對(duì)源XML文檔進(jìn)行轉(zhuǎn)換,可以利用ASP,JSP等語言及DOM對(duì)象來實(shí)現(xiàn)更復(fù)雜的功能。首先,服務(wù)器必須讀入源XML文檔和XSL樣式表文檔,可以利用如下ASP代碼實(shí)現(xiàn):下面的ASP代碼利用DOM對(duì)象實(shí)現(xiàn)了在XSL樣式表中嵌入JavaScript代碼并重新生成一個(gè)XSL樣式表文件:嵌入的腳本函數(shù)是一個(gè)過濾器,它根據(jù)從客戶端提交過來的書本ID與當(dāng)前轉(zhuǎn)換的元素ID相比較,并返回一個(gè)Boolean值?,F(xiàn)在服務(wù)器可以對(duì)源XML文檔進(jìn)行轉(zhuǎn)換了,利用下面的ASP代碼可以實(shí)現(xiàn)轉(zhuǎn)換:xml.transformNode(xsl)其中,xml表示要轉(zhuǎn)換的XML文檔對(duì)象,xsl為樣式表文檔對(duì)象。在XSL樣式表中,利用循環(huán)和條件處理元素,就可以根據(jù)用戶的需要在源XML文檔轉(zhuǎn)換為目標(biāo)文檔的過程中過濾掉不必要的信息,如以下代碼:5模塊化和并行進(jìn)行的原則毫無
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版新能源充電樁投資加盟合作協(xié)議范本3篇
- 2025年度住宅小區(qū)景觀窗簾藝術(shù)化設(shè)計(jì)與安裝合同范本4篇
- 基坑坍塌事故案例分析
- 二零二五年度車輛檢測(cè)報(bào)告服務(wù)合同2篇
- 二零二五年度情侶心靈契合不分手情感咨詢合同2篇
- 二零二五版綠色生態(tài)農(nóng)業(yè)種植項(xiàng)目合作協(xié)議4篇
- 新課標(biāo)下的實(shí)驗(yàn)教學(xué)新趨勢(shì)-以小學(xué)科學(xué)為例
- 學(xué)生工業(yè)實(shí)習(xí)中的實(shí)踐能力鍛煉
- 2025年度房屋裝修工程驗(yàn)收與保修個(gè)人房屋裝修合同模板
- 白山2025年吉林白山市縣事業(yè)單位招聘應(yīng)征入伍高校畢業(yè)生14人筆試歷年參考題庫附帶答案詳解
- 中國(guó)2型糖尿病運(yùn)動(dòng)治療指南 (2024版)
- 貨物運(yùn)輸安全培訓(xùn)課件
- 統(tǒng)編版高中政治選擇性必修2《法律與生活》知識(shí)點(diǎn)復(fù)習(xí)提綱詳細(xì)版
- 前端年終述職報(bào)告
- 2024小說推文行業(yè)白皮書
- 特殊感染手術(shù)管理考試試題及答案
- 旅館治安管理制度及突發(fā)事件應(yīng)急方案三篇
- 市人民醫(yī)院關(guān)于開展“改善就醫(yī)感受提升患者體驗(yàn)主題活動(dòng)”2023-2025年實(shí)施方案及資料匯編
- 政績(jī)觀存在的問題及整改措施范文(7篇)
- GB 1886.232-2016食品安全國(guó)家標(biāo)準(zhǔn)食品添加劑羧甲基纖維素鈉
- 《港口管理》課件綜述
評(píng)論
0/150
提交評(píng)論