日期:2014-05-16  浏览次数:20413 次

jstl处理日期

JSP Standard Tag Libraries
Formatting and Internationalization
Two form input parameters, 'date' and 'isoDate', are URL-encoded in the link leading to this page. 'isoDate' is formatted according to the ISO8601 standard.
Formatting of numbers and dates is based on the browser's locale setting. Formatting will change if you switch the default language setting from English to French or German, for example. (The browser needs to be restarted, too.)

Library import and parameter capturing:

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

<fmt:parseDate value="${param.date}" var="date" pattern="yyyy/MM/dd:HH:mm:ss>
<fmt:parseDate value="${param.isoDate}" var="isoDate" pattern="yyyyMMdd'T'HHmmss">

The input parameters must match the patterns, or the JSP will thrown an exception. This page does no error handling.

Input parameters:
Date: ? ?2004/04/01:13:30:00 ? Java format: Thu Apr 01 13:30:00 CST 2004
isoDate: 20040531T235959 ? ? ? Java format: Mon May 31 23:59:59 CDT 2004

Dates
Tag Output
Attribute: value; required. Tag has no body.
<fmt:formatDate value="${date}" type="both"/>

?2004-4-1 13:30:00 ?
<fmt:formatDate value="${isoDate}" type="both"/>

?2004-5-31 23:59:59 ?
Attribute: type; optional. Indicates what to print: date, time, or both.
<fmt:formatDate value="${date}" type="date"/>

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

?23:59:59 ?
Attribute: dateStyle; optional. Varies the date format.
<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日 星期一 ?
Attribute: timeStyle; optional. Varies the time format.
<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 ?
Attribute: pattern; optional. Inidcates date/time custom patterns.
<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/>