프로그래밍/JSP Servlet

JSTL/Servlet – JSTL <fmt:formatDate> 커스텀 액션 사용하기

가카리 2016. 1. 31. 22:41
반응형

 

JSTL/Servlet – JSTL <fmt:formatDate> 커스텀 액션 사용하기

 

<fmt:formatDate>는 날짜와 시각을 포맷하는 커스텀 액션입니다. 이 액션을 사용하기 위해서는 자바의 Date 클래스가 필요합니다.

 

    <fmt:formatDate value="${Date클래스객체}" />

 

만약 시각을 출력하고 싶다면 type 애트리뷰트를 time으로 지정하면 됩니다.

 

    <fmt:formatDate value="${Date 클래스객체}" type="time"/>

 

type 애트리뷰트에는 'date'나 'both'라는 값도 넘겨줄 수 있는데 'date'는 날짜만 출력이고 'both'는 시간 날짜 둘 다 출력하도록 만듭니다.

 

 

한번 formatDate를 사용해봅시다.

 

Time.jsp

 

<%@ page language="java" contentType="text/html; charset=EUC-KR"

pageEncoding="EUC-KR"%>

<%@page import="java.util.*" %>

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

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

<c:set var="date" value="<%=new Date() %>"/><!-- Date클래스 객체를 만듭니다. -->

 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>Insert title here</title>

</head>

<body>

    오늘 날짜 출력 <fmt:formatDate value="${date }"/> <BR>

    지금 시간 출력 <fmt:formatDate value="${date }" type="time"/>

</body>

</html>

 

실행 화면

type에 따라서 값이 바뀜을 알 수 있습니다.

 

만약 다른 2016년 1월 31일 처럼 출력하고 싶다면 dateStyle애트리뷰트에서 long이라는 값을 넘겨주면 됩니다.

 

    <fmt:formatDate type="time" value="${date}" dateStyle="long"/>

 

시간은 timeStyle애트리뷰트를 이용하면 됩니다.(long, full, medium, short 중 택 1)

 

 

이번 예제를 통해 short, medium, long, full 모두 사용해봅시다.

 

Time2.jsp

 

<%@ page language="java" contentType="text/html; charset=EUC-KR"

pageEncoding="EUC-KR"%>

<%@page import="java.util.*" %>

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

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

<c:set var="date" value="<%=new Date() %>" />

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>Insert title here</title>

</head>

<body>

    short 사용 <fmt:formatDate value="${date }" type="both" dateStyle="short"

            timeStyle="short"/><BR>

    medium 사용 <fmt:formatDate value="${date }" type="both" dateStyle="medium"

            timeStyle="medium"/><BR>

    long 사용 <fmt:formatDate value="${date }" type="both" dateStyle="long"

            timeStyle="long"/><BR>

    full 사용 <fmt:formatDate value="${date }" type="both" dateStyle="full"

            timeStyle="full"/><BR>            

                                

</body>

</html>

 

실행 화면

옵션별로 출력하는 포맷이 다름을 알 수 있습니다.

반응형