JSP中常用的JSTL fmt(format格式化)标签用法整理
JSTL标签提供了对国际化(I18N)的支持,它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据和日期的方法。实现这些功能需要I18N格式标签库(I18N-capableformationtagsliberary)。引入该标签库的方法为:
<%@taglibprefix="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:formatNumbervalue="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"] />
<%@pagelanguage="java"contentType="text/html;charset=utf-8"%> <%@tagliburi="http://java.sun.com/jsp/jstl/fmt"prefix="fmt"%> <!DOCTYPEhtml> <html> <head> <title>FormatNumber标签使用</title> </head> <body> <h1>FormatNumber标签使用</h1> <fmt:setLocalevalue="fr_fr"/> France:<fmt:formatNumbervalue="123456789.012"/> <fmt:setLocalevalue="zh_cn"/> China:<fmt:formatNumbervalue="123456789.012"/> <fmt:setLocalevalue="de_de"/> Germany:<fmt:formatNumbervalue="123456789.012"/> </body> </html>
<fmt:parseNumber/>标签
用来将字符串类型的数字、货币、或百分比转换成数字类型
<fmt:parseNumbervalue="numberString"[type={number|currency|percent|}] [pattern="pattern"] [parseLocale="parseLocale"] [integerOnly="{false|true}"] [var="varname"] [scope="page|request|session|application"] />
<fmt:formatDate/>标签
用来将日期类型转换为字符串类型日期
<fmt:formatDatevalue="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:parseDatevalue="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:setTimeZonevalue="timezone"[var="varname"][scope="{page|request|session|application}"]/>