jstl[教程] 下载本文

9.5.3 用于显示资源配置文件信息的 <fmt:message> 标签

用于信息显示的标签,将显示资源配置文件中定义的信息。它的属性和描述如表 9.19 所示:

表 9.19 <fmt:message> 标签属性和说明

下面看一个示例:

<fmt:setBundle basename="applicationMessage" var="applicationBundle"/> <fmt:bundle basename="applicationAllMessage">

<fmt:message key="userName" />

<p>

<fmt:message key="passWord" bundle="${applicationBundle}" />

</fmt:bundle>

该示例使用了两种资源配置文件的绑定的做法,“ applicationMessage ”资源配置文件利用 <fmt:setBundle> 标签被赋于了变量“ applicationBundle ”,而作为 <fmt:bundle> 标签定义的“ applicationAllMessage ”资源配置文件作用于其标签体内的显示。

q 第一个 <fmt:message> 标签将使用“ applicationAllMessage ”资源配置文件中“键”为“ userName ”的信息显示。

q 第二个 <fmt:message> 标签虽然被定义在 <fmt:bundle> 标签体内,但是它使用了 bundle 属性,因此将指定之前由 <fmt:setBundle> 标签保存的“ applicationMessage ”资源配置文件,该“键”为“ passWord ”的信息显示。

9.5.4 用于参数传递的 <fmt:param> 标签

<fmt:param> 标签应该位于 <fmt:message> 标签内,将为该消息标签提供参数值。它只有一个属性 value 。 <fmt:param> 标签有两种使用版本,一种是直接将参数值写在 value 属性中,另一种是将参数值写在标签体内。

9.5.6 用于为请求设置字符编码的 <fmt:requestEncoding> 标签

<fmt:requestEncoding> 标签用于为请求设置字符编码。它只有一个属性 value ,在该属性中可以定义字符编码。

9.5.7 用于设定时区的 <fmt:timeZone> 、 <fmt:setTimeZone> 标签 这两组标签都用于设定一个时区。唯一不同的是 <fmt:timeZone> 标签将使得在其标签体内的工作可以使用该时区设置, <fmt:setBundle> 标签则允许将时区设置保存为一个变量,在之后的工作可以根据该变量来进行。它们的属性和描述如表 9.20 所示:

表 9.20 <fmt:timeZone> 、 <fmt:setTimeZone> 标签 属性和说明

9.5.8 用于格式化数字的 <fmt:formatNumber> 标签

<fmt: formatNumber > 标 签用于格式化数字。它的属性和描述如表 9.21 所示:

表 9.21 <fmt:formatNumber> 标签属性和说明

<fmt:formatNumber> 标签实际是对应 java.util.NumberFormat 类, type 属性的可能值包括 currency (货币)、 number (数字)和 percent (百分比)。

下面看一个示例。

<fmt:formatNumber value="1000.888" type="currency" var="money"/> 该结果将被保存在“ money ”变量中,将根据 Locale 环境显示当地的货币格式。

9.5.9 用于解析数字的 <fmt:parseNumber> 标签

<fmt:parseNumber> 标签用于解析一个数字,并将结果作为 java.lang.Number 类的实例返回。

<fmt:parseNumber> 标签看起来和 <fmt:formatNumber> 标签的作用正好相反。它的属性和描述如表 9.22 所示:

表 9.22 <fmt:parseNumber> 标签属性和说明

下面看一个示例。

<fmt:parseNumber value="15%" type="percent" var="num"/>

解析之后的结果为“ 0.15 ”。

9.5.10 用于格式化日期的 <fmt:formatDate> 标签

<fmt:formatDate> 标签用于格式化日期。它的属性和描述如表 9.23 所示:

表 9.23

<fmt:formatDate> 标签属性和说明

<fmt:formatDate> 标签与 <fmt:timeZone> 、 <fmt:setTimeZone> 两组标签的关系密切。若没有指定 timeZone

属性, 也可以通过 <fmt:timeZone> 、 <fmt:setTimeZone> 两组标签设定的时区来格式化最后的结果。

9.5.11 用于解析日期的 <fmt:parseDate> 标签

<fmt:parseDate> 标签用于解析一个日期,并将结果作为 java.lang.Date 类型的实例返回。 <fmt:parseDate> 标签看起来和 <fmt:formatDate> 标签的作用正好相反。它的属性和描述如表 9.24 所示:

表 9.24 <fmt:parseDate> 标签属性和说明

<fmt:parseNumber> 和 <fmt:parseDate> 两组标签都实现解析字符串为一个具体对象实例的工作,因此,这两组解析标签对 var 属性的字符串参数要求非常严格。就 JSP 页面的表示层前段来说,处理这种解析本不属于份内之事,因此 <fmt:parseNumber> 和 <fmt:parseDate> 两组标签应该尽量少用,替代工作的地方应该在服务器端表示层的后段,比如在 Servlet 中。

<sql:> 标签

作者:不详 文章来源:http://www.blogjava.net/nbtymm/archive/2007/01/18/94655.html 上传日

期:2007-01-21

9.6 Database access 标签库

Database access 标签库中的标签用来提供在 JSP 页面中可以与数据库进行交互的功能,虽然它的存在对于早期纯 JSP 开发的应用以及小型的开发有着意义重大的贡献,但是对于 MVC 模型来说,它却是违反规范的。因为与数据库交互的工作本身就属于业务逻辑层的工作,所以不应该在 JSP 页面中出现,而是应该在模型层中进行。

对于 Database access 标签库本书不作重点介绍,只给出几个简单示例让读者略微了解它们的功能。