2014. 3. 6. 10:30 COMPUTER/JAVA, JSP
[JAVA/JSTL] JSTL 포매터 오류, Cannot convert 2014-02-24 10:43:12.67 of type class java.lang.String to class java.util.Date

2014-02-24 10:43:12.67 을 스트링 클래스를 날짜 클래스로 변경할 수 없습니다


이 오류는 JSTL에서 형 변환을 할 수 없다는 에러 입니다.

fmt:formatDate에 스트링 말고 데이트 형을 주입해야 합니다.

저의 list.employmentParticipator.eventSendDttm 변수가 String 이였습니다.

Date로 고치면서 해결





에러난 소스

<fmt:formatDate value="${list.employmentParticipator.eventSendDttm}" pattern="yyyy-MM-dd"/>


콘솔 에러

Throwable occurred: javax.el.ELException:
Cannot convert 2014-02-24 10:43:12.67 of type class java.lang.String to class java.util.Date
at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:420)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:187)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:1026)
...
...


eventSendDttm이 지정된 VO 자바파일

...
...
...
private Date updaterDttm; //수정일시
private String eventSendDttm; //이벤트지급
...
...
...

댓글을 달아 주세요

2013. 1. 28. 23:29 COMPUTER/JAVASCRIPT, JQUERY
[JAVASCRIPT/JS] Date, getYear, getMonth, getDate 달력에 년 월 일 계산, 한자리 월, 일에 0 붙이기

자바스크립트로 날짜를 계산하는 예제입니다.

오늘 날짜를 생성한 후에 생성한 날짜 객체에다가 날짜를 변경하여 다시 정의합니다.

 

 

<script src="http://code.jquery.com/jquery.min.js"></script>
<script>
$(document).ready(function(){

	// 날짜 객체 생성
	var date=new Date();

	// 날짜에 10일을 더한 후 재정의
	date=new Date(date.getYear(),date.getMonth(),date.getDate()+10);

	// 날짜를 메세지로 표시한다.
	alert(date.getFullYear()+' '+
		((date.getMonth()+1)<10 ? '0'+(date.getMonth()+1) : (date.getMonth()+1))+' '+
		(date.getDate()<10 ? '0'+date.getDate() : date.getDate() ) );

});
</script>

 

제이쿼리의 온로드에 예제를 작성했습니다.

 

날짜를 계산하고 얼랏으로 확인한 화면

댓글을 달아 주세요

2011. 1. 13. 17:31 COMPUTER
[ORACLE] 오라클 날짜변환 입출력 함수 SELECT, INSERT, TO_DATE, TO_CHAR
오라클에서 사용하는 날짜변환 함수
TO_DATETO_CHAR예제입니다.
쓸때마다 까먹어 ㅎㅎ;;


문자열을 데이트타입으로 입력
INSERT INTO 테이블 (날짜컬럼)
VALUES ( SYSDATE )

INSERT INTO 테이블 (날짜컬럼)
VALUES ( TO_DATE('2011-03-03','YYYY-MM-DD') )

INSERT INTO 테이블 (날짜컬럼)
VALUES ( TO_DATE('12-JAN-1982', 'DD-MON-YYYY') )

INSERT INTO 테이블 (날짜컬럼)
VALUES ( TO_DATE('10-04-2010 20:37:50','MM-DD-YYYY HH24:MI:SS') )


데이트타입을 문자열로 출력
SELECT TO_CHAR(날짜컬럼,'YYYY-MM-DD') FROM 테이블

SELECT TO_CHAR(날짜컬럼,'DD-MON-YYYY') FROM 테이블

SELECT TO_CHAR(날짜컬럼,'YYYY-MM-DD HH24:MI:SS') FROM 테이블

댓글을 달아 주세요

  1. 쓸때마다 까먹어 ㅎㅎ;;

    2011.05.08 21:01 [ ADDR : EDIT/ DEL : REPLY ]
  2. 쓸때마다 까먹어 ㅎㅎ;;

    2011.05.08 21:01 [ ADDR : EDIT/ DEL : REPLY ]

2010. 10. 5. 12:45 COMPUTER/JAVA, JSP
[JAVA/JSP] 날짜용 유틸 함수
자바에서 날짜처리할때 사용하는 함수들 입니다.
파일명.java로 저장
클래스명은 파일명과 맞춰주세요.

package common.util;

import java.util.*;
import java.text.*;

public class 클래스명
{
    private static Date date;
    private static Calendar cal;
    private static String result;
    private static String pattern = "yyyy년 M월 d일  a h시 m분";
    private static SimpleDateFormat formatter;
    private static Locale nation = new Locale("ko","KOREA");

    /**
     * 내용  : 오늘 날짜를 Default Format으로 return
     * 입력 값 :
     * 출력 값 : String result
     */
    public static String getToday()
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(pattern, nation);
        result = formatter.format(date);
        return result;
    }
   
    /**
     * 내용  : 오늘 날짜를 입력한 Format으로 return
     * 입력 값 : String datePattern
     * 출력 값 : String result
     */
    public static String getToday(String datePattern)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(datePattern, nation);
        result = formatter.format(date);
        return result;
    }

    /**
     * 내용  : 원하는 시기의 일단위로 입력한 숫자에 해당하는 날짜를 Default Format으로 return
     * 입력 값 : int change
     * 출력 값 : String result
     */
    public static String getDayDate(int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(pattern, nation);
  cal.add(Calendar.DATE, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 일단위로 입력한 숫자에 해당하는 날짜를 입력한 Format으로 return
     * 입력 값 : String datePattern, int change
     * 출력 값 : String result
     */
    public static String getDayDate(String datePattern, int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(datePattern, nation);
  cal.add(Calendar.DATE, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 주단위로 입력한 숫자에 해당하는 날짜를 Default Format으로 return
     * 입력 값 : int change
     * 출력 값 : String result
     */
    public static String getWeekDate(int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        change = change * 7;
        formatter = new SimpleDateFormat(pattern, nation);
  cal.add(Calendar.DATE, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 주단위로 입력한 숫자에 해당하는 날짜를 입력한 Format으로 return
     * 입력 값 : String datePattern, int change
     * 출력 값 : String result
     */
    public static String getWeekDate(String datePattern, int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        change = change * 7;
        formatter = new SimpleDateFormat(datePattern, nation);
  cal.add(Calendar.DATE, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 월단위로 입력한 숫자에 해당하는 날짜를 Default Format으로 return
     * 입력 값 : String datePattern, int change
     * 출력 값 : String result
     */
    public static String getMonthDate(int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(pattern, nation);
  cal.add(Calendar.MONTH, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 월단위로 입력한 숫자에 해당하는 날짜를 입력한 Format으로 return
     * 입력 값 : String datePattern, int change
     * 출력 값 : String result
     */
    public static String getMonthDate(String datePattern, int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(datePattern, nation);
  cal.add(Calendar.MONTH, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 년단위로 입력한 숫자에 해당하는 날짜를 Default Format으로 return
     * 입력 값 : String datePattern, int change
     * 출력 값 : String result
     */
    public static String getYearDate(int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(pattern, nation);
  cal.add(Calendar.YEAR, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

    /**
     * 내용  : 원하는 시기의 년단위로 입력한 숫자에 해당하는 날짜를 입력한 Format으로 return
     * 입력 값 : String datePattern, int change
     * 출력 값 : String result
     */
    public static String getYearDate(String datePattern, int change)
    {
        date = new Date();
        cal = Calendar.getInstance();
        cal.setLenient(true);
        cal.setTime(date);
       
        formatter = new SimpleDateFormat(datePattern, nation);
  cal.add(Calendar.YEAR, change);
  Date setDate = cal.getTime();
  result = formatter.format(setDate);
  return result;
    }

 /**
     * 내용  : form부터 to까지 일수를 구하여 결과값 return
     * 입력 값 : String from, String to, String pattern
     * 출력 값 : int result
     */
 public static int daysBetween(String from, String to, String pattern)
 {
  SimpleDateFormat format = new SimpleDateFormat(pattern, Locale.KOREA);
  Date date1 = null;
  Date date2 = null;

  try
  {
   date1 = format.parse(from);
   date2 = format.parse(to);
  }
  catch(ParseException e)
  {
   return -999;
  }

  if(!format.format(date1).equals(from))
  {
   return -999;
  }
  
  if(!format.format(date2).equals(to))
  {
   return -999;
  }

  long duration = date2.getTime() - date1.getTime();

  return (int)(duration/(1000 * 60 * 60 * 24));
 }
}



댓글을 달아 주세요

  1. 여기에 할인 원본 ugg 부츠 영국, 저렴한 비용으로 ugg 부츠 판매 영국의 콘센트를 제공합니다. ugg 부츠를 소유하기 위해서는 따뜻한 겨울을 위해 ugg 부츠 판매 영국 형성하고 있습니다.

    2011.11.14 16:28 [ ADDR : EDIT/ DEL : REPLY ]
  2. Les nouvelles au sujet des femmes solides chaussures de taille 12 est que: les magasins de chaussures en ligne aussi vendre des chaussures chics <a href="http://www.suprashoespascher.com" title="Supra Shoes Pas Cher">Supra Shoes Pas Cher</a>
    qui peut être porté dans des occasions différentes. Les motifs sont assez larges: de petits dessins bustier, lacé chaussures,<a href="http://www.suprashoespascher.com" title="supra shoes france">supra shoes france</a>

    2011.11.29 16:01 [ ADDR : EDIT/ DEL : REPLY ]

2010. 10. 5. 09:37 COMPUTER
[ORACLE] 오라클에 DATE타입으로 INSERT / SELECT, ORA-01861: 리터럴이 형식 문자열과 일치하지 않음
오라클 날짜형식으로 된 컬럼의 입/출력 쿼리


- 입력 (INSERT)

INSERT INTO TABLE1 (REG_DATE) VALUES ( TO_DATE('10-04-2010 20:37:50','MM-DD-YYYY HH24:MI:SS') )
INSERT INTO TABLE2 (REG_DATE) VALUES ( SYSDATE )


- 출력 (SELECT)
SELECT TO_CHAR(REG_DATE,'YYYY-MM-DD HH24:MI:SS') FROM TABLE1



TO_DATE에서 형식을 똑바로 맞추지 못하면 나는 에러입니다.

댓글을 달아 주세요

  1. 유행 UGG 부츠 영국 온라인 UGG 부츠 스토어에서 부츠 세일을 UGG 아늑한 겨울의 다양한 볼 수 UGG 부츠 영국.

    2011.11.14 16:29 [ ADDR : EDIT/ DEL : REPLY ]

2010. 7. 6. 17:09 COMPUTER/JAVASCRIPT, JQUERY
[JAVASCRIPT/SCRIPT] 디데이(D-Day), 지난날짜 계산하기

1. getTime() 메소드는 1970년 0시 0분 0초부터 해당시간까지의 밀리세컨드 타임으로 반환합니다.
2. 특정날짜와 현재시간을 getTime()으로 시간차를 얻은 후, 8640000으로 나누면 두날짜의 차이를 구할 수 있습니다.


예제1
var now=new Date();
var then=new Date("august 26, 2009");
var gap=now.getTime()-then.getTime();
gap=Math.floor(gap/ (1000*60*60*24));
document.write(now.getTime()+" "+then.getTime()+" "+(now.getTime()-then.getTime())+"<br>");
document.write(gap+"<br>");

 

예제2
var now=new Date();
var dday=new Date();
dday.setYear(2009);
dday.setMonth(8-1);
dday.setDate(23);
var togo=dday.getTime()-now.getTime();
var days=Math.abs(Math.floor(togo/(1000*60*60*24)));
document.write(days+'일');

댓글을 달아 주세요

최근에 올라온 글

최근에 달린 댓글