自带蓄电池应急灯图例:JSTL详解(四)

来源:百度文库 编辑:偶看新闻 时间:2024/04/27 22:37:57
用于包含页面的
标签允许包含另一个 JSP 页面到本页面来。它的属性和描述如表 9.9 所示:
表 9.9   标签属性和说明
属性
描述
url
需要导入页面的 URL
context
Web Context 该属性用于在不同的 Context 下导入页面,当出现 context 属性时,必须以“ / ”开头,此时也需要 url 属性以“ / ”开头(可选)
charEncoding
导入页面的字符集(可选)
var
可以定义导入文本的变量名(可选)
scope
导入文本的变量名作用范围(可选)
varReader
接受文本的 java.io.Reader 类变量名(可选)
下面看一个示例。



该示例演示了三种不同的导入方法,第一种是在同一 Context 下的导入,第二种是在不同的 Context 下导入,第三种是导入任意一个 URL 。
用于得到 URL 地址的 标签
标签用于得到一个 URL 地址。它的属性和描述如表 9.10 所示:
表 9.10  标签属性和说明
属性
描述
value
页面的 URL 地址
context
Web Context 该属性用于得到不同 Context 下的 URL 地址,当出现 context 属性时,必须以“ / ”开头,此时也需要 url 属性以“ / ”开头(可选)
charEncoding
URL 的(可选)
var
存储 URL 的变量名(可选)
scope
变量名作用范围(可选)
下面看一个示例:

link
得到了一个 URL 后,以 EL 表达式放入 标签的 href 属性,达到链接的目的。
用于页面重定向的 标签
用于页面的重定向,该标签的作用相当于 response.setRedirect 方法的工作。它包含 url 和 context 两个属性,属性含义和 标签相同。下面看一个示例。

该示例若出现在 JSP 中,则将重定向到当前 Web Context 下的“ MyHtml.html ”页面,一般会与 等标签一起使用。
用于包含传递参数的 标签
用来为包含或重定向的页面传递参数。它的属性和描述如表 9.11 所示:
表 9.11   标签属性和说明
属性
描述
name
传递的参数名
value
传递的参数值(可选)
下面是一个示例:



该示例将为重的“ MyHtml.jsp ”传递指定参数“ userName=’RW’ ”。
标签库
在企业级应用越来越依赖 XML 的今天, XML 格式的数据被作为信息交换的优先选择。 XML processing 标签库为程序设计者提供了基本的对 XML 格式文件的操作。在该标签库中的标签一共有 10 个,被分为了三类,分别是:
q         XML 核心标签:
q         XML 流控制标签:
q         XML 转换标签:
由于该组标签库专注于对某一特定领域的实现,因此本书将只选择其中常见的一些标签和属性进行介绍。
用于解析 XML 文件的 标签
标签是该组标签库的核心,从其标签名就可以知道,它是作为解析 XML 文件而存在的。它的属性和描述如表 9.12 所示:
表 9.12   标签属性和说明
属性
描述
doc
源 XML 的内容,该属性的内容应该为 String 类型或者 java.io.Reader 的实例,可以用 xml 属性来替代,但是不被推荐
var
将解析后的 XML 保存在该属性所指定的变量中,之后 XML processing 标签库中的其他标签若要取 XML 中的内容就可以从该变量中得到(可选)
scope
变量的作用范围(可选)
varDom
指定保存的变量为 org.w3c.dom.Document 接口类型(可选)
scopeDom
org.w3c.dom.Document 的接口类型变量作用范围(可选)
systemId
定义一个 URI ,该 URI 将被使用到 XML 文件中以接入其他资源文件(可选)
filter
该属性必须为 org.xml.sax.XMLFilter 类的一个实例,可以使用 EL 表达式传入,将对 XML 文件做过滤得到自身需要的部分(可选)
其中, var 、 scope 和 varDom 、 scopeDom 不应该同时出现,而应该被视为两个版本来使用,二者的变量都可以被 XML processing 标签库的其他标签来使用。
标签单独使用的情况很少,一般会结合 XML processing 标签库中的其他标签来一起工作。下面看一个示例。
首先给出一个简单的 XML 文件,将对该 XML 文件做解析,该 XML 文件名为 SampleXml.xml 。


RW
123456
28

book1
book2
book3


标签库的工作: