这篇文章主要介绍了JSP中常用的JSTL fmt(format格式化)标签用法整理,fmt的格式化处理遵循i18n国际化格式标准,需要的朋友可以参考下
JSTL标签提供了对国际化(I18N)的支持,它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据和日期的方法。实现这些功能需要I18N格式标签库(I18N-capable formation tags liberary)。引入该标签库的方法为:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
I18N格式标签库提供了11个标签,这些 标签从功能上可以划分为3类如下:
(1)数字日期格式化。formatNumber标签、formatData标签、parseNumber标签、parseDate标签、timeZone标签、setTimeZone标签。
(2)读取消息资源。bundle标签、message标签、setBundle标签。
(3)国际化。setlocale标签、requestEncoding标签。
接下将详细介绍这些标签的功能和使用方式。
<fmt:formatNumber>标签
根据区域或定制的方式将数字格式化成数字、货币或百分比
<fmt:formatNumber value="number" [type={number|currency|percent|}]
[pattern="pattern"]
[currencyCode="currencyCode"]
[currentSymbol="currentSymbol"]
[groupingUsec="{true|false}"]
[maxIntergerDigits="maxIntergerDigits"]
[minIntergerDigits="minIntergerDigits"]
[maxFractionDigits="maxFractionDigits"]
[minFractionDigits="minFractionDigits"]
[var="varname"]
[scope="page|request|session|application"]
/>
<%@page language="java" contentType="text/html;charset=utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<!DOCTYPE html>
<html>
<head>
<title>FormatNumber标签使用</title>
</head>
<body>
<h1>FormatNumber标签使用</h1>
<fmt:setLocale value="fr_fr" />
France:<fmt:formatNumber value="123456789.012"/>
<fmt:setLocale value="zh_cn" />
China:<fmt:formatNumber value="123456789.012"/>
<fmt:setLocale value="de_de" />
Germany:<fmt:formatNumber value="123456789.012"/>
</body>
</html>
<fmt:parseNumber />标签
用来将字符串类型的数字、货币、或百分比转换成数字类型
<fmt:parseNumber value="numberString" [type={number|currency|percent|}]
[pattern="pattern"]
[parseLocale="parseLocale"]
[integerOnly="{false|true}"]
[var="varname"]
[scope="page|request|session|application"]
/>
<fmt:formatDate />标签
用来将日期类型转换为字符串类型日期
<fmt:formatDate value="number" [type={time|date|both}]
[pattern="pattern"]
[dateStyle="{default|short|medium|long|full}"]
[timeStyle="{default|short|medium|long|full}"]
[timeZone="timeZone"]
[var="varname"]
[scope="page|request|session|application"]
/>
<fmt:parseDate />标签
用来将字符串类型的时间或日期转换成日期时间类型
<fmt:parseDate value="date" [type={time|date|both}]
[pattern="pattern"]
[dateStyle="{default|short|medium|long|full}"]
[timeStyle="{default|short|medium|long|full}"]
[timeZone="timeZone"]
[var="varname"]
[scope="page|request|session|application"]
/>
<fmt:setTimeZone />标签
用来设置默认时区或将时区存储到属性范围中
复制代码 代码如下:
<fmt:setTimeZone value="timezone" [var="varname"] [scope="{page|request|session|application}"] />
<fmt:timeZone />标签
用来暂时的设定时区
<fmt:timeZone value="timeZone">
本体内容
</fmt:timeZone>
<fmt:setLocale />标签
用来设定用户的区域语言
复制代码 代码如下:
<fmt:setLocale value="locale" [variant="variant"] [scope="{page|request|session|application}"] />
<fmt:requestEncoding />标签
设定接收的字符串的编码格式
<fmt:requestEncoding value="charsetName" />
<fmt:setBundle />标签
用来设定默认的数据来源,也可以将其存储到一定范围中,供需要时使用
复制代码 代码如下:
<fmt:setBundle basename="basename" [var="varname"] [scope="{page|request|session|application}"] />
<fmt:message />标签
用来从指定的资源文件中通过索引取得值
复制代码 代码如下:
<fmt:message key="messageKey" [bundle="resourceBundle"] [var="varname"] [scope="{page|request|session|application}"] />
<fmt:param />标签
用来传递参数(在从资源文件中取得信息时,可能需要动态设定参数的情况下)
<fmt:param value="messageParameter" />
没有本体内容
<fmt:param value="messageParameter" >有本体内容
参数
</fmt:param>
<fmt:bundle />标签
用来设定数据来源
<fmt:bundle basename="basename" [prefix="prefix"] >
本体内容<fmt:message>
</fmt:bundle>
|