오라클에서 날짜를 저장할 때는 주로 DATA_TYPE을 TIMESTAMP를 사용한다.
하지만, 이를 출력할 때는 다음과 같이 출력이 된다.
우리는 보통 웹에서 2019-10-05 07:43:22 이런식으로 날짜를 보는 것에 익숙해져 있다.
그렇다면 우리가 익숙해진 날짜 표현방식으로 어떻게 바꿀 수 있을까?
JSTL의 format 태그를 사용하면 된다. <fmt:formatDate>
우선 다음의 태그 라이브러리를 jsp 파일 상단에 적어준다.
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
이런 태그 라이브러리를 사용하기 위해서는 라이브러리를 "WebContent/WEB-INF/lib"경로에 jar 파일을 넣어줘야 한다.
jar 파일은 https://mvnrepository.com/artifact/javax.servlet/jstl/1.2 <- 이곳에서 다운로드 가능하다.
jar (404KB) 파일을 다운로드 받고 압축을 푼 다음에 해당 jar파일을 위의 경로로 삽입한 후에 위의 내용을 진행하면 된다.
prefix="fmt"인 이유는 대부분의 사람들이 "fmt"으로 사용한다고 한다.
자 이제 준비작업은 끝났다!
// test.jsp의 일부분
// n.regdate는 Notice라는 클래스의 하나의 개체이다.
// Notice는 regdate, id, title 등 여러 개가 있다.
<fmt:formatDate pattern="yyyy-MM-dd" value="${n.regdate }"/>
위와 같이 태그 안에 pattern을 지정해주고 출력을 하면 다음과 같이 출력된다.
pattern은 원하는대로 가능하다. 예를 들어 "yyyy년 MM월 dd일"로 하면 2019년 10월 09일이 출력된다.
pattern을 지정할 때 년(year)을 나타내는 y와 일(day)을 나타내는 d는 소문자인데 월(month)를 나타내는 M은 왜 대문자일까?
분을 나타내는 minute과 m이 겹치기 때문에 M이라고 표현한 것이다.
시, 분, 초까지 표현하고 싶다면 다음과 같이 표현하면 된다.
<fmt:formatDate pattern="yyyy-MM-dd hh:mm:ss" value="${n.regdate }"/>
'Programming > Servlet' 카테고리의 다른 글
[JSP] JSTL로 현재 날짜와 특정 날짜 비교하기 (1) | 2020.12.16 |
---|---|
[JSP & 서블릿] 모델(Model)1, 2 방식에 대해 알아보자 (0) | 2020.08.04 |
서블릿(Servlet) 필터(Filter)를 사용하여 한글 처리 문제를 해결하기(어노테이션 방식) (0) | 2020.08.03 |
서블릿(Servlet) url 매핑기법 2가지(web.xml 방식, 어노테이션 방식) (0) | 2020.07.30 |
[JSP] JSTL(Jsp Standard Tag Library) 정리 - <c:set>,<c:out>,<c:remove>,<c:if>,<c:choose>,<c:when>,<c:otherwise>,<c:forEach>,<c:forTokens> 등 (1) | 2019.10.27 |