Development Tip

JSP에서 날짜 변환 및 형식 지정

yourdevel 2020. 11. 25. 21:18
반응형

JSP에서 날짜 변환 및 형식 지정


내 JSP 페이지 Date에서이 형식을 얻고 있습니다.

2011 년 5 월 13 일 금요일 19:59:09 GMT 0530 (인도 표준시)

이것을 패턴으로 yyyy-MM-dd HH:mm:ss어떻게 변환 할 수 있습니까?


SimpleDateFormat수업 을 사용하여 할 수 있습니다 .

SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String dates=formatter.format(mydate);
//mydate is your date object

JSP에서는 일반적으로이를 위해 JSTL 을 사용 <fmt:formatDate>합니다. 물론를 사용 하여 스크립틀릿넣을 수도 SimpleDateFormat있지만 2003 년 이후 스크립틀릿강력히 권장 되지 않습니다 .

${bean.date}반환 한다고 가정하면 다음과 같이 java.util.Date사용할 수 있습니다.

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
...
<fmt:formatDate value="${bean.date}" pattern="yyyy-MM-dd HH:mm:ss" />

실제로를 사용하는 경우 java.util.Calendar해당 getTime()메서드를 호출하여 다음 java.util.Date<fmt:formatDate>수락 하는 것을 가져올 수 있습니다 .

<fmt:formatDate value="${bean.calendar.time}" pattern="yyyy-MM-dd HH:mm:ss" />

당신이 실제로에서 날짜를 유지하는 경우 또는, java.lang.String(이 모델에서 심각한 설계 실수를 나타냅니다, 당신은 정말로 저장 날짜에 모델을 수정해야 java.util.Date하는 대신 등의 java.lang.String!), 여기에 하나 날짜 문자열 형식의 예에서 변환 할 수있는 방법 MM/dd/yyyyyyyy-MM-dd들어 JSTL의 도움 으로 다른 날짜 문자열 형식으로 <fmt:parseDate>.

<fmt:parseDate pattern="MM/dd/yyyy" value="${bean.dateString}" var="parsedDate" />
<fmt:formatDate value="${parsedDate}" pattern="yyyy-MM-dd" />

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html dir="ltr" lang="en-US">
 <head>
 <meta charset="UTF-8" />
  <title>JSP with the current date</title>
  </head>
 <body>
 <%java.text.DateFormat df = new java.text.SimpleDateFormat("dd/MM/yyyy"); %>
<h1>Current Date: <%= df.format(new java.util.Date()) %> </h1>
</body>
</html>

출력 : 현재 날짜 : 2010 년 10 월 3 일


Date td = new Date();
String b = new String("");
SimpleDateFormat format = new SimpleDateFormat("YYYY/MM/dd");
b = format.format(td);
out.println(b);           

... sun.com/jsp/jstl/format을 사용하여 가져 오기를 보여주는 위의 예는 올바르지 않습니다 (나에게 적합하지 않음을 의미 함).

대신 아래를 시도하십시오-이 가져 오기 문은 유효합니다

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %><%@ taglib uri="http://java.sun.com/jstl/core-rt" prefix="c-rt" %><%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
<html>
  <head>
    <title>Format Date</title>
  </head>

  <body>
    <c-rt:set var="now" value="<%=new java.util.Date()%>" />

    <table border="1" cellpadding="0" cellspacing="0"
    style="border-collapse: collapse" bordercolor="#111111"
    width="63%" id="AutoNumber2">
      <tr>
        <td width="100%" colspan="2" bgcolor="#0000FF">
          <p align="center">
            <b>
              <font color="#FFFFFF" size="4">Formatting: 
              <fmt:formatDate value="${now}" type="both"
              timeStyle="long" dateStyle="long" />
              </font>
            </b>
          </p>
        </td>
      </tr>

<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Date"%>
<%@page import="java.util.Locale"%>

<html>
<head>
<title>Date Format</title>
</head>
<body>
<%
String stringDate = "Fri May 13 2011 19:59:09 GMT 0530";
Date stringDate1 = new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss Z", Locale.ENGLISH).parse(stringDate);
String stringDate2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(stringDate1);

out.println(stringDate2);
%>
</body>
</html>

참고 URL : https://stackoverflow.com/questions/6162401/convert-and-format-a-date-in-jsp

반응형