JSTL <fmt:formatDate> 标签用于使用不同的方式格式化日期。
语法
JSP <fmt:formatDate> 标签的语法如下。
<fmt:formatDate
value="datevalue"
[dateStyle="default|short|medium|long|full"]
[pattern="customPattern"]
[scope="page|request|session|application"]
[timeStyle="default|short|medium|long|full"]
[timeZone="timeZone"]
[type="time|date|both"]
[var="varname"]
/>
其中,[ ]
中的内容为可选项,参数说明如下表所示:
参 数 | 说 明 |
---|---|
value | 要显示的日期 |
dateStyle | 设定日期输出的格式 |
pattern | 自定义格式的模式 |
scope | 设定参数 var 的有效范围,默认为 page |
timeStyle | 设置日期的输出风格 |
timeZone | 设置日期的时区 |
type | 设置输出的类别,如 time、date 和 both |
var | 代表格式化后的数字,若设定了该参数,需要使用 <c:out> 标签输出 |
对 formatDate 输出模式的说明如下表所示:
模 式 | 示 例 |
---|---|
yyyyMMdd | 20201012 |
HH:mm | 11:50 |
HH:mm:ss | 11:50:10 |
yyyy.mm.dd G 'at' HH:mm:ss z | 2020.11.12 公元 at 11:30:10 CST |
yyMMddHHmmssz | 140120112030+0800 |
示例
下面为 <fmt:formatDate> 标签的简单实例。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
<head>
<title>runoops自学(www.runoops.com)</title>
</head>
<body>
<c:set var="Date" value="<%=new java.util.Date()%>" />
日期格式化(1):
<fmt:formatDate type="time" value="${Date}" /><br>
日期格式化(2):
<fmt:formatDate type="date" value="${Date}" /><br>
日期格式化(3):
<fmt:formatDate type="both" value="${Date}" /><br>
日期格式化(4):
<fmt:formatDate type="both" dateStyle="short" timeStyle="short"
value="${Date}" /><br>
日期格式化(5):
<fmt:formatDate type="both" dateStyle="medium" timeStyle="medium"
value="${Date}" /><br>
日期格式化(6):
<fmt:formatDate type="both" dateStyle="long" timeStyle="long"
value="${Date}" /><br>
</body>
</html>
页面输出内容如下:
日期格式化(1): 16:54:13
日期格式化(2): 2021-1-6
日期格式化(3): 2021-1-6 16:54:13
日期格式化(4): 21-1-6 下午4:54
日期格式化(5): 2021-1-6 16:54:13
日期格式化(6): 2021年1月6日 下午04时54分13秒