一直耳闻xsl,可是一直没有使用过,这次由于项目的需要,只好用心好好研究一下,成果如下:
首先,要纠正一下,xsl并不是一种编程语言,它只是一种用来转换xml的语言,这个有点类似我们的Spring的配置文件,是通过对xml语言的解析,来达到我们需要的目的,下面的例子,可以帮助你更好的理解这一点。
环境,在提到一个新的语言,我们一定会有两个疑问,一个是,这个语言的编辑器是什么,这个语言的运行的环境又是什么?对于xsl来讲,它的编辑器就是所有可以编辑xml的编辑器,例如记事本,editplus等等,运行的环境呢,这个更简单,因为在IE5.0以上的版本,都加入了xsl的解析器。好啦,环境,编辑器都解决,下面来介绍一下什么是xsl。
首先要清楚一个问题,我们在访问的时候,其实,访问的是一个xml文件,那么这个文件的解析呢,是交给xsl来完成的,在需要被解析的xml中,会有这个元素告诉浏览器(解析器),解析我的xsl是什么?
这个href就是告诉浏览器,解析我的xsl是什么,那么xsl的内容是什么呢
2
3 < xsl:stylesheet xmlns:xsl ="http://www.w3.org/TR/WD-xsl" >
4
5 < xsl:template match ="/" >
6
7 < html >
8
9 < head >
10
11 < title > First XSLT example </ title >
12
13 </ head >
14
15 < body >
16
17 < p >< xsl:value-of select ="greeting" /></ p >
18
19 </ body >
20
21 </ html >
22
23 </ xsl:template >
24
25 </ xsl:stylesheet >
看出来了吗,xsl是以<xsl:stylesheet>标记作为开始和结束的内容,解析的模板为<xsl:template>
模板里面的内容是不是很熟悉,看到了吧,这个是html的元素,想到了如果用到我们传统的j2EE结构中,该如何与后台进行交互了吗,对了,就是解析这个核心的xml,好啦,这个是后话,现在将整个代码贴出来,运行下,看看效果吧
hello.xml
2
3 <? xml-stylesheet type="text/xsl" href="hello.xsl" ?>
4
5 < greeting > Hello, world! </ greeting >
hello.xsl
2
3 < xsl:stylesheet xmlns:xsl ="http://www.w3.org/TR/WD-xsl" >
4
5 < xsl:template match ="/" >
6
7 < html >
8
9 < head >
10
11 < title > First XSLT example </ title >
12
13 </ head >
14
15 < body >
16
17 < p >< xsl:value-of select ="greeting" /></ p >
18
19 </ body >
20
21 </ html >
22
23 </ xsl:template >
24
25 </ xsl:stylesheet >
26
27