본문 바로가기
Stack Overflow/스프링

[스프링] JSTL에서 날짜 Date 추출 및 일자 연산 코드

by Lich King 2022. 1. 15.

JSTL에서 매번 날짜(Date) 데이터 처리할 때마다 햇갈려서 이렇게 남겨논다.

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

<!-- 현재 년도 날짜 -->
<c:set var="now" value="<%=new java.util.Date()%>" />
<c:set var="nowDate"><fmt:formatDate value="${now}" pattern="yyyyMMdd" /></c:set> 

<!--parseDateData가 날짜 데이터인경우.. -->
<fmt:parseDate var="parseDateData" value="${parseDateData}" pattern="yyyyMMdd"/>
<fmt:parseNumber var="parseNumberData" value="${parseDateData.time / (10006060*24)}" integerOnly="true" />

<!-- nowDate가 날짜 데이터인 경우.. -->
<fmt:formatDate var="formatToday" value="${nowDate}" pattern="yyyyMMdd" /> <!-- 포멧 변경 -->
<fmt:parseDate var="parseToday" value="${formatToday}" pattern="yyyyMMdd" />
<fmt:parseNumber var="todayDelay" value="${parseToday.time / (10006060*24)}" integerOnly="true" />
 

그대로 긁어가면 날짜 타입에 맞춰서 값을 사용할 수 있다.

yyyyMMdd 패턴은 yyyy-MM-dd hh:mm:ss와 같이 변경하여 시, 분, 초 까지 사용할 수 있다.

날짜는 integerOnly를 사용하여 정수방식으로 바꿔서 년, 월, 일, 시, 분, 초 단위로 세세하게 계산도 가능하다.

 

댓글