웹 개발2009. 3. 2. 10:18

JSP에서 알면 간단하면서도 모르면 고생하는 것이 날짜를 받아서 DB에 넣는 것이 아닐까요?

입력이 request를 통해 들어올 때 getParameter 메소드로는 문자열 밖에 못 받는데,
이걸 DB에서 인식하는 Timestamp 형태로 바꾸기 위해서

가장 무식한 형태는 년,월,일,시,분,초 형태로 짤라서 넣기 ㅡ.ㅡ;

이걸 Date로 넣을 경우 오류가 발생하기도 해서 java.sql.date를 안 쓰고 java.sql.timestamp를 쓰는데

정말 간단한 형태를 지원합니다.


Timestamp.valueOf("2009-03-01 10:10:05"); 형태로 집어넣는 겁니다.

그러기에 이를 쓰기 위한 메소드는 두 줄이면 끝납니다.

import java.sql.Timestamp;

public Timestamp getTimestamp(String str){
return Timestamp.valueOf(str);
}

위의 문자열 형태는 규칙에 따르면 yyyy-mm-dd hh:mm:ss.fffffffff 형식입니다.
위에서 보는 것과 같이 timestamp는 나노 세컨드까지 지원하는 반면,
java.sql.date는 밀리 세컨드까지만 지원합니다.
이 때문에 처리할 때 좀 달라지는 경우가 생깁니다.
Posted by net4all