Stack Overflow/스프링

[스프링] JSTL 특정 날짜 이후에 페이지 내용 변경하기

Lich King 2022. 3. 22. 10:08

서비스를 하다보면 고객들에게 일정날 날짜 이후에 공개되야 하는 페이지가 있다.
디비로 처리하는 방법도 있고, 백엔드 단에서도 처리하는 방법이 있고 그럴텐데, 
팝업과 같은 공지내용을 간단히 바꾸기 위해서 위 내용은 너무 번거롭다.
간단하게 변경하는 방법을 기록한다.

 

1. 태그 라이브러리 선언

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

 

2. 태그

날짜와 같은 경우 'yyyymmdd' 형식으로 정확하게 현재 날짜와 비교하는 방법도 있을 것이다.
근데 생각해보면 날짜는 지금보다 앞선 날짜가 무조건 크다.
위와 같이 간단하게 작성하면 팝업 내용을 해당 일자 후에 변경할 수 있다.

<fmt:formatDate value="${now}" pattern="yyyyMMdd" var="now" />
<c:choose>
	<c:when test="${now <= 20220322 }">
		<!-- 2022년 3월 22일까지 실행할 문구-->
	</c:when>
	<c:otherwise>
		<!-- 2022년 3월 22일 이후에 실행할 문구-->
	</c:otherwise>
</c:choose>

 


시간도 컨트롤을 하고 싶으면 pattern 부분을 다음과 같이 변경하면 되겠다.

기존 pattern : yyyymmdd
수정 pattern : yyyyMMddHHmmss

상기와 같이 작성하면 시, 분, 초 까지 컨트롤이 가능하다.