欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
xslt有什么用--canonical_cqh

     adun今天問(wèn)我xslt到底有什么用。相對于其他技術(shù),它有什么存在的必要性。
    xslt的主要作用是對xml結構的轉換,即它是一種描述結構變換規則的語(yǔ)言。不過(guò)也可以將它與我們更熟悉的用于生成html(結構)的模板語(yǔ)言作一個(gè)對比。
1. 兩者都能直接生成xml格式的文本(結構)
2. 兩者都有循環(huán)和判斷等邏輯處理語(yǔ)句。
3. 模板語(yǔ)言可以通過(guò)EL表達式等語(yǔ)言取得源數據, xslt通過(guò)xpath語(yǔ)法取得源數據.
4. 模板語(yǔ)言通過(guò)自定義tag等機制實(shí)現分解和組合, xslt通過(guò)xsl:call-template等語(yǔ)法實(shí)現分解與組合.

     tpl等模板語(yǔ)言直接操縱java中的對象, 體現的是圖(Graph)模型, 并通過(guò)對象函數封裝了部分動(dòng)態(tài)性. 一般訪(fǎng)問(wèn)的時(shí)候是通過(guò)短程關(guān)系逐級訪(fǎng)問(wèn),例如x.y.funcA().b。利用apache項目組的jxpath包,我們也可以使用類(lèi)似于xpath的語(yǔ)法在對象圖上進(jìn)行全局訪(fǎng)問(wèn)。
    xslt使用嚴格定義的xpath語(yǔ)法訪(fǎng)問(wèn)Tree結構,具有很強的數據操縱能力,例如我們可以通過(guò)//mynode等語(yǔ)法輕易的實(shí)現節點(diǎn)的聚合,構造出新的結構。在一般xslt包的實(shí)現中,都提供了javascript擴展,可以使用javascript構造出的數據節點(diǎn)。

     在tpl這樣的模板語(yǔ)言中java中的數據對象結構與tpl中的模板結構(處理規則的結構)是兩分的,而在xslt中輸入數據結構與xslt自身處理規則的機構卻是統一的。實(shí)際上tpl這樣的模板語(yǔ)言主要是基于過(guò)程語(yǔ)義,即先做。。。,用到。。。,然后。。。, 而xslt對于輸入數據的結構具有明確的全局性假設,主要是一種轉換語(yǔ)義,即不論在什么情況下,只要遇到。。。,就做。。。。 在xslt中可以通過(guò)xpath語(yǔ)法指定處理規則針對數據(輸入結構)的的觸發(fā)條件, 而在tpl中只能通過(guò)<c:decorator>為tpl標簽指定轉換器,而無(wú)法針對數據指定處理規則。

     在數據訪(fǎng)問(wèn)模型這一方面,原則上說(shuō)xslt與模板語(yǔ)言各有優(yōu)勢。實(shí)際在用于html生成的過(guò)程中,xpath的全局訪(fǎng)問(wèn)和匹配能力一般難以得到發(fā)揮,而xml格式的限制又在一定程度上阻礙了使用靈活的數據供體,這方面模板語(yǔ)言有一定的優(yōu)勢。但是xslt的約束更強也有本質(zhì)性的好處,它使用xml數據并輸出xml數據,維護了結構的同質(zhì)性,便于管道操作。因為假設更明確,xslt對于xml格式的數據的操縱和封裝能力也要強于模板語(yǔ)言。例如它可以使用來(lái)為節點(diǎn)追加屬性。

     xslt在用于xhtml生成時(shí)的一個(gè)主要劣勢在于它是對變換規則的分解之后的描述,而我們所希望得到的是最終的結果,即這些規則綜合應用所生成的結果。雖然xslt的語(yǔ)法是xml語(yǔ)言,與xhtml在語(yǔ)法格式上保持了一致性。但是在xslt中,xslt的標簽破壞了xhtml語(yǔ)義上的結構,使得目前無(wú)法做到所見(jiàn)即所得。我們不得不在頭腦中運行xslt規則來(lái)想象最終的結果,這無(wú)疑是痛苦的。模板語(yǔ)言在這方面要輕松許多。

     xslt的另一個(gè)問(wèn)題是有時(shí)xml語(yǔ)法顯得過(guò)于冗長(cháng)了。在操縱一些局部結構的時(shí)候,xml節點(diǎn)并不一定是合適的表達。例如

<xsl:value-of select="$x"/> 對比 ${x},


<xsl:call-template name="subrule">
    <xsl:with-param name="argA"><xsl:value-of select="substring-after($path,‘.‘)"/></xsl:with-param>
</xsl:call-template>
對比
<my:subrule argA="${path.substringAfter(‘.‘)}" />

在調用子模板方面,顯然xslt封裝的抽象層次也要弱于tpl模板語(yǔ)言。


     xslt作為一種xml格式的結構變換語(yǔ)言,維護了xml世界的概念完整性,其意義無(wú)疑是重大的。但并不是所有時(shí)候xml都是最適的描述模型。我們最好還是將它與其他技術(shù)結合使用。目前在witrx平臺中,我們對于xslt的使用主要是對tpl模板進(jìn)行布局和過(guò)濾處理,即xslt用于對處理規則進(jìn)行變換,而將根據數據生成html這個(gè)最細致的工作留給過(guò)程處理能力和封裝能力更強的tpl模板語(yǔ)言。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Java XML 技術(shù)專(zhuān)題
Java程序員必須知道的的5道經(jīng)典XML面試題
web抓取工作特點(diǎn)
xslt輕松入門(mén)(zt)
歡迎光臨 - 琳婕小筑-老貓的理想 - XSLT輕松入門(mén) -
xslt AND xpath
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久