runoops.com

<fmt:formatDate>标签

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秒