用XML JSP實(shí)現(xiàn)網(wǎng)頁(yè)內(nèi)容動(dòng)態(tài)顯示的方案(3)_.Net教程
推薦:基于 pureXML 技術(shù)的數(shù)據(jù)庫(kù)表結(jié)構(gòu)擴(kuò)展信息系統(tǒng)交付使用之初,數(shù)據(jù)庫(kù)表結(jié)構(gòu)的設(shè)計(jì)往往邏輯結(jié)構(gòu)清晰,管理使用方便,但是當(dāng)信息系統(tǒng)項(xiàng)目運(yùn)行一段時(shí)間,隨著業(yè)務(wù)的不斷變化和增加,處理流程不斷的變革,信息系統(tǒng)需要從前臺(tái)界面到后臺(tái)
正確的定義和表示空元素;
和結(jié)束標(biāo)記可以使用大寫(xiě)或小寫(xiě),但它們必須匹配;
以起始標(biāo)簽和結(jié)束標(biāo)簽為界的各個(gè)元素必須正確地嵌套,不允許出現(xiàn)交叉;
屬性值必須使用引號(hào)括起來(lái);
此文件中直接或間接引用的每一個(gè)己析實(shí)休都是格式正確的;
它滿足XML規(guī)范中定義的所有其他的格式正確性約束。
2、 使用XSL顯示XML文檔
XSL(eXtensible stylesheet language)是描述XML文檔樣式的一種語(yǔ)言,是由W3C制定的。XSL處理程序讀取XML文檔和XSL樣式單,基于處理程序在XSL樣式單中找到的指令,輸出新的XML文檔。XSL樣式表就是對(duì)XML文檔中類的描述文件,描述文件說(shuō)明的是如何使用格式化詞匯將類實(shí)例轉(zhuǎn)換為一個(gè)XML文檔。同時(shí),XSL樣式表也必須是組織良好的XML。
XSL有三個(gè)組成的模塊:XSL模式(XSL Patern)、”XSL”名域(”XSL” Namespace)、”fo”名域(”fo” Namespace)。使用XSL樣式單可有三種主要方式將XML文檔轉(zhuǎn)換成其他格式:XML文檔和相關(guān)的樣式單都是用于客戶端(Web瀏覽器)的,然后客戶端程序按照樣式單中指定格式轉(zhuǎn)換文檔,并將它呈現(xiàn)給用戶;服務(wù)器將XSL樣式單應(yīng)用于XML文檔,以便此文檔能夠轉(zhuǎn)換成其他某種格式(通常為HTML),并把轉(zhuǎn)換后的文檔發(fā)送到客戶端程序(Web瀏覽器);使用第三方程序?qū)⒃碭ML文檔轉(zhuǎn)換成其他某種格式(通常為HTML),才把此文檔放置在服務(wù)器上,服務(wù)器和客戶程序只處理轉(zhuǎn)換后的文檔。由于,大多數(shù)瀏覽器是IE,而且IE對(duì)XSL的支持又好,第一種方法常被采用。
XSL轉(zhuǎn)換語(yǔ)言通過(guò)將XML樹(shù)形結(jié)構(gòu)變換成另一個(gè)XML樹(shù)形結(jié)構(gòu)來(lái)操作。這種語(yǔ)言含有操作符,此操作符用來(lái)從樹(shù)形結(jié)構(gòu)中選擇特定節(jié)點(diǎn)、對(duì)節(jié)點(diǎn)重新排序以及輸出節(jié)點(diǎn)。在XML文檔中引用XSL的說(shuō)明如下:
< ?xsl-stylesheet type=”text/xsl” href=”mystyle.xsl”?>
表明該XML文檔引用的XSL樣式單為mystyle.xsl。內(nèi)容與形式分離使XML文檔更偏重于數(shù)據(jù)本身,而不受顯示方式的細(xì)枝末節(jié)的影響。而且可以通過(guò)定義不同的樣式單可以使用相同的數(shù)據(jù)呈現(xiàn)出不同的顯示外觀,實(shí)現(xiàn)XML數(shù)據(jù)的可重用性。
首先定義構(gòu)造部分輸出的模塊,或?qū)?lái)自XML源文件中的數(shù)據(jù)應(yīng)用模板。轉(zhuǎn)換模板包含在元素xsl:template中,模板可定義一組將源文檔轉(zhuǎn)換為結(jié)果樹(shù)的規(guī)則,確定要處理的節(jié)點(diǎn)。然后匹配模式,一個(gè)模式是一個(gè)字符串,它用于匹配XML源文件中的一個(gè)元素。用@匹配屬性節(jié)點(diǎn)。再用XSL中的元素轉(zhuǎn)換XML文檔中的元素。用XSL可以非常方便地實(shí)現(xiàn)同HTML中同樣的表單定義。只要將要在表單中的元素放入定義好的XSL模板中即可,表單的名稱、提義方式等屬性與HTML中的定義相同。同樣的表格的范圍、樣式,頁(yè)面的顯示風(fēng)格、腳本等的定義也都與HTML相似。
另外,CSS也可以應(yīng)用到XML文檔,但CSS決定了頁(yè)面的視覺(jué)外觀,不會(huì)改變?cè)次臋n的結(jié)構(gòu)。CSS和XSL是互相補(bǔ)充,各有特色的。
經(jīng)過(guò)XSL轉(zhuǎn)換后XML文檔表單提交到JSP頁(yè)面或servlet進(jìn)行處理。這部分可以完全和頁(yè)面處理分開(kāi),可以實(shí)現(xiàn)控制邏輯的完全獨(dú)立。
3、 XML文檔數(shù)據(jù)的輸出
XML的主要應(yīng)用包括交換信息、定義文檔類型、說(shuō)明信息,信息以一種結(jié)構(gòu)化的基于文本格式的方式表達(dá),可以很容易地進(jìn)行傳輸、轉(zhuǎn)換和闡釋。對(duì)數(shù)據(jù)的處理可以全部放在javabean或servlet中進(jìn)行,與頁(yè)面的顯示完全分開(kāi)。
在JSP中生成XML文檔很簡(jiǎn)單,仍然可使用CSS或XSL來(lái)轉(zhuǎn)換和顯示XML。一個(gè)具有XML模板的JSP頁(yè)面,其實(shí)質(zhì)就是在XML文檔模板中,在適當(dāng)?shù)牡胤郊尤隞AVA代碼和JSP標(biāo)記。在頁(yè)面中加入< %@page contentType=”text/xml”% >即可以將JSP頁(yè),以XML文檔形式顯式出來(lái),同時(shí)把動(dòng)態(tài)數(shù)據(jù)放入< % % >標(biāo)記內(nèi)。對(duì)生成的XML同樣可以用XSL樣式單進(jìn)行格式轉(zhuǎn)換和樣式定義等。
分享:SQL Server 2005中插入XML數(shù)據(jù)方法SQL Server 2005數(shù)據(jù)庫(kù)中增加了XML類型,在創(chuàng)建表的時(shí)候可以指定某一列為XML類型,示例如下: CREATE TABLE customers ( name VARCHAR(20) NOT NULL P
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無(wú)刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見(jiàn)代碼存在的偽造IP問(wèn)題探討
- VS2010 水晶報(bào)表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(kù)(連接字符串的配置及獲取)
- asp.net頁(yè)面?zhèn)髦禍y(cè)試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲(chǔ)過(guò)程實(shí)現(xiàn)分頁(yè)示例代碼
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- ASP.NET學(xué)習(xí)篇(4)——服務(wù)器端的控件
- .NET中 關(guān)于臟讀 不可重復(fù)讀與幻讀的代碼示例
- Attribute高級(jí)應(yīng)用:簡(jiǎn)化ANF自定義控件初始化過(guò)程
- 怎樣解決asp.net URL傳值出現(xiàn)錯(cuò)誤的問(wèn)題
- .Net FW中無(wú)法正確顯示中文問(wèn)題
- 解析VC.NET擴(kuò)展Windows磁盤清理工具的功能
- VB.NET進(jìn)度條的方法代碼
- ajax.net對(duì)數(shù)據(jù)庫(kù)的插入實(shí)例
- 解讀VS2008中查看.NET源碼的設(shè)置方法
- 面向服務(wù)及其在互聯(lián)系統(tǒng)策略中的角
- 相關(guān)鏈接:
復(fù)制本頁(yè)鏈接| 搜索用XML JSP實(shí)現(xiàn)網(wǎng)頁(yè)內(nèi)容動(dòng)態(tài)顯示的方案(3)
- 教程說(shuō)明:
.Net教程-用XML JSP實(shí)現(xiàn)網(wǎng)頁(yè)內(nèi)容動(dòng)態(tài)顯示的方案(3)
。