JSTL JSP Tag介绍

JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat 4.x。在JSP 2.0中也是作为标准支持的。

fmt:formatDate

jakarta-taglibs-standard-1.1.2

/lib---jstl.jar、standard.jar

/tld---fmt.tld

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

fmt:formatDate 的输出格式

<fmt:formatDate value="${isoDate}" type="both"/>
2004-5-31 23:59:59

<fmt:formatDate value="${date}" type="date"/>
2004-4-1

<fmt:formatDate value="${isoDate}" type="time"/>
23:59:59

<fmt:formatDate value="${isoDate}" type="date" dateStyle="default"/>
2004-5-31

<fmt:formatDate value="${isoDate}" type="date" dateStyle="short"/>
04-5-31

<fmt:formatDate value="${isoDate}" type="date" dateStyle="medium"/>
2004-5-31

<fmt:formatDate value="${isoDate}" type="date" dateStyle="long"/>
2004年5月31日

<fmt:formatDate value="${isoDate}" type="date" dateStyle="full"/>
2004年5月31日 星期一

<fmt:formatDate value="${isoDate}" type="time" timeStyle="default"/>
23:59:59

<fmt:formatDate value="${isoDate}" type="time" timeStyle="short"/>
下午11:59

<fmt:formatDate value="${isoDate}" type="time" timeStyle="medium"/>
23:59:59

<fmt:formatDate value="${isoDate}" type="time" timeStyle="long"/>
下午11时59分59秒

<fmt:formatDate value="${isoDate}" type="time" timeStyle="full"/>
下午11时59分59秒 CDT

<fmt:formatDate value="${date}" type="both" pattern="EEEE, MMMM d, yyyy HH:mm:ss Z"/>
星期四, 四月 1, 2004 13:30:00 -0600

<fmt:formatDate value="${isoDate}" type="both" pattern="d MMM yy, h:m:s a zzzz/>
31 五月 04, 11:59:59 下午 中央夏令时

<fmt:formatDate value="${question.questiondate}" type="time" timeStyle="full" pattern="yyyy-MM-dd HH:mm"/>

2009-01-11 00:28

---------------------------------------------------------------------

格式模式 
d 月中的某一天。一位数的日期没有前导零。 
dd 月中的某一天。一位数的日期有一个前导零。 
ddd 周中某天的缩写名称,在 AbbreviatedDayNames 中定义。 
dddd 周中某天的完整名称,在 DayNames 中定义。 
M 月份数字。一位数的月份没有前导零。 
MM 月份数字。一位数的月份有一个前导零。 
MMM 月份的缩写名称,在 AbbreviatedMonthNames 中定义。 
MMMM 月份的完整名称,在 MonthNames 中定义。 
y 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示不具有前导零的年份。 
yy 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示具有前导零的年份。 
yyyy 包括纪元的四位数的年份。 
gg 时期或纪元。如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该模式。 
h 12 小时制的小时。一位数的小时数没有前导零。 
hh 12 小时制的小时。一位数的小时数有前导零。 
H 24 小时制的小时。一位数的小时数没有前导零。 
HH 24 小时制的小时。一位数的小时数有前导零。 
m 分钟。一位数的分钟数没有前导零。 
mm 分钟。一位数的分钟数有一个前导零。 
s 秒。一位数的秒数没有前导零。 
ss 秒。一位数的秒数有一个前导零。

fmt:formatNumber

<fmt:formatNumber value="12" type="currency" pattern="$.00"/> -- $12.00

<fmt:formatNumber value="12" type="currency" pattern="$.0#"/> -- $12.0

<fmt:formatNumber value="1234567890" type="currency"/> -- $1,234,567,890.00(那个货币的符号和当前web服务器的 local 设定有关)

<fmt:formatNumber value="123456.7891" pattern="#,#00.0#"/> -- 123,456.79

<fmt:formatNumber value="123456.7" pattern="#,#00.0#"/> -- 123,456.7

<fmt:formatNumber value="123456.7" pattern="#,#00.00#"/> -- 123,456.70

<fmt:formatNumber value="12" type="percent" /> -- 1,200% (type 可以是currency、 number、 和percent)。

java格式化输出:
DecimalFormat df = new DecimalFormat("格式");
String fmt =df.format(double);
符号                  意义
0                     一个数位
#                     一个数位,前导零和追尾零不显示
.                      小数点分割位置
,                     组分隔符的位置
-                      负数前缀
%                    用100乘,并显示百分号
其他任何符号    在输出字符串中包括指定符号

数字用例:<fmt:formatNumber value="${order.orderAmount}" minFractionDigits="2"/>元

posted @ 2012-11-14 17:50  我是小菜鸟  阅读(323)  评论(0编辑  收藏  举报