jstl 에서 날짜 연산은 어떻게하나요?
조회수 3874회
jsp 상에서 jstl fmt 태그를 이용하여
날짜를 연산하려 합니다.
날짜는 데이터가
"1986-01-20" 형식의 스트링으로 넘어옵니다.
현재날짜 - 마감날짜 = 몇일남음
으로 활용하려고 하는데 도무지 어렵네요
1 답변
-
String inputDate = "2016-08-20"; DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDate fromDate = LocalDate.parse(inputDate, formatter); // 2016-08-20 LocalDate toDate = LocalDate.now(); // 2016-08-11 long day = ChronoUnit.DAYS.between(fromDate, toDate); // -9
ChronoUnit 클래스 에 참고하세요~ 날짜 계산 편하게 하실 수 있어요. LocalDate와 ChronoUnit은 jdk 8 부터 사용 가능합니다~
저는 ChronoUnit.DAYS.between 를 사용해서 '일'기준으로 계산했습니다. 양수냐 음수냐에 따라서 fromDate 와 toDate 의 위치를 변경하시면 됩니다.
DAYS 대신에 시, 분, 초 등 구할 수 있으니 활용해보세요.
jsp 안에서 직접 구현하시려면 <%%> 사용하시거나, 메서드로 선언해서 사용하셔도 됩니다.
댓글 입력