Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP에서 날짜를 파싱하는 방법 – fmt:parseDate 태그 완벽 가이드

JSTL에서 날짜 문자열을 실제 Date 객체로 변환하려면 <fmt:parseDate> 태그를 사용합니다. 이 태그는 지정한 형식에 맞는 날짜 표현을 해석하여, 그 결과를 변수에 저장하거나 페이지에 바로 출력할 수 있게 해줍니다.

주요 속성

<fmt:parseDate> 태그에서 사용할 수 있는 속성은 다음과 같습니다.

속성설명필수 여부기본값
value읽어들일(파싱할) 날짜 값아니요태그 본문(Body)
typeDATE, TIME 또는 BOTH 중 선택아니요date
dateStyleFULL, LONG, MEDIUM, SHORT 또는 DEFAULT아니요DEFAULT
timeStyleFULL, LONG, MEDIUM, SHORT 또는 DEFAULT아니요DEFAULT
parseLocale날짜를 파싱할 때 사용할 로케일(locale)아니요기본 로케일
pattern사용자 지정 파싱 패턴아니요없음
timeZone파싱된 날짜에 적용할 시간대아니요기본 시간대
var파싱된 날짜를 저장할 변수 이름아니요페이지에 직접 출력
scope저장된 변수의 유효 범위(scope)아니요page

pattern 속성은 <fmt:formatDate> 태그의 pattern 속성과 동일한 방식으로 작동합니다. 다만 포매팅(formatting)과 달리, 파싱(parsing) 시에는 pattern 속성이 파서가 입력값을 어떤 형식으로 기대해야 하는지를 지정한다는 점이 다릅니다.

사용 예제

<%@ taglib prefix = "c" uri = "https://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "fmt" uri = "https://java.sun.com/jsp/jstl/fmt" %>
<html>
   <head>
      <title>JSTL fmt:parseDate Tag</title>
   </head>
   <body>
      <h3>Date Parsing:</h3>
      <c:set var = "now" value = "20-10-2010" />
      <fmt:parseDate value = "${now}" var = "parsedEmpDate" pattern = "dd-MM-yyyy" />
      <p>Parsed Date: <c:out value = "${parsedEmpDate}" /></p>
   </body>
</html>

위 예제의 동작 순서를 살펴보면 다음과 같습니다.

  • c:set 태그로 now 변수에 문자열 "20-10-2010"을 저장합니다.
  • fmt:parseDate 태그가 dd-MM-yyyy 패턴에 맞춰 이 문자열을 해석하고, 결과를 parsedEmpDate 변수에 담습니다.
  • c:out 태그로 파싱된 날짜 객체를 화면에 출력합니다.

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Date Parsing:
Parsed Date: Wed Oct 20 00:00:00 GST 2010