JSTL Format fmt:formatDate Tag

The <fmt: formatDate> tag is used to format the date and time according to the customized formatting pattern.

The Syntax of the <fmt: formatDate> Tag

<fmt: formatDate attributes/>

Attributes of <fmt: formatDate> Tag

valueSpecifies date or time to be formatted.
typeSpecifies that either date or time or both should be formatted.
dateStyleSpecifies the style of date that whether it is short, long or medium .
patternSpecifies the custom pattern to format the date or time.
varSpecifies the variable name to which the date and time is to be formatted.
scopeThe Scope into which the variable date and time has to be formatted
timeStyleSpecifies the style of time that whether it is short, long or medium.
timeZoneUsed to set the formatted time.


<%@ page language="java" contentType="text/html; charset=UTF-8"
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<title>dateNumber Tag</title>
	<h2>Format Date</h2>
	<c:set var="today" value="<%=new java.util.Date()%>" />
		Formatted Date :
		<fmt:formatDate type="date" value="${today}" />
		Formatted Time :
		<fmt:formatDate type="time" value="${today}" />
		Formatted Both :
		<fmt:formatDate type="both" value="${today}" />
		Formatted both in short style :
		<fmt:formatDate type="both" dateStyle="short" timeStyle="short"
			value="${today}" />
		Formatted in medium style :
		<fmt:formatDate type="both" dateStyle="medium" timeStyle="medium"
			value="${today}" />
		Formatted in long style :
		<fmt:formatDate type="both" dateStyle="long" timeStyle="long"
			value="${today}" />
		Formatted Date :
		<fmt:formatDate pattern="dd-MM-yyyy" value="${today}" />


Details of the Code

  • <fmt:formatDate type=”date”> tag is used to format date.
  • <fmt:formatDate type=”time”> tag is used to format time.
  • <fmt:formatDate type=”both” dateStyle=”short” timeStyle=”short” value=”${today}” /> tag is used to format both date and time in short pattern.
  • <fmt:formatDate pattern=”dd-MM-yyyy” > tag is used to format the date pattern to be displayed in the output.

Steps for Execution

  • Save this file as example.jsp in your eclipse IDE.
  • Now select this jsp file, right mouse click and select Run as ->Run on server


When the execution process is completed successfully we will get the following output :
jstl_fmt formatDate output_demo


Previous Tutorial : JSTL Format fmt:bundle Tag :: Next Tutorial : JSTL Format fmt:parseDate Tag



About Krishna Srinivasan

He is Founder and Chief Editor of JavaBeat. He has more than 8+ years of experience on developing Web applications. He writes about Spring, DOJO, JSF, Hibernate and many other emerging technologies in this blog.