날자 형식을 표현할 경우 어떻게 되는지 알아보자.
1. 데이터베이스 테이블 필드의 type이 date이다. 이때는 시분초까지 저장되겠다.
2. rs.getDate("필드명")로 꺼내온다.
3. 꺼내온 값을 객체에 담아줄때 setter, getter메소드를 사용하는데 두개의 메소드도 아래와
같이 date를 인자로 사용한다.
public Date getBuy_dt() { return (Date) get("buy_dt"); }
public void setBuy_dt(Date buy_dt) { set("buy_dt", buy_dt); }
4. 화면에 보여줄 경우에 아래와 같은 코드가 들어간다.
ColumnConfig confirmDt = new ColumnConfig("buy_dt", "구입일",120);
confirmDt.setDateTimeFormat(DateTimeFormat.getFormat("yyyy.MM.dd"));
이렇게 할 경우 grid나 다른 컴포넌트에서 년월일을 출력하게 된다.
그런데 년월일 뿐만 아니라 시분초까지 표현하고 싶어 setDataTimeFormat을 아래와 같이
수정하고 확인하니 시분초가 모두 00:00:00으로 찍힌다.
confirmDt.setDateTimeFormat(DateTimeFormat.getFormat("yyyy.MM.dd HH:mm:ss"));
삽질 좀 하다 나온 결론은 시분초까지 표현할 경우 서버쪽 코드인 rs.getDate("buy_dt:")
이부분을 아래와 같이 수정해주자.
// DateFormat
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// ResultSet를 객체에 저장
p.setBuy_dt(sf.parse(rs.getString("buy_dt")));
이제 아래와 같이 시분초가 표현되는 것을 확인할 수 있다.
댓글을 달아 주세요
와우....진화의 끝은 어디인지...
2011.01.12 17:46 [ ADDR : EDIT/ DEL : REPLY ]아직 실력도 없는데...부럽네요~~~
이놈 포팅해서 테스트 한번 해보세요 . 그리 어렵지는 않을 겁니다. 전에 인턴시켜서 회사에서 써먹을 수 있는 놈 인지
2011.01.14 12:56 신고 [ ADDR : EDIT/ DEL : REPLY ]알아봤는데 뭐 버그가 좀 있지만 나름 괜찮은 결과물이 나왔습니다. 지금 보고 계시는 놈은 그때 보다 한참 버젼업이
된 듯 하니 더 좋아졌겠지요 . 나중에 시간나면 회사에서 사용할 수 있는 스케즐러로 써볼까도 생각중 입니다.
물론, 애플의 소프트웨어는 거리의 혜택을 유지. 사실 마이크로 소프트 준 관련된 여러 상당히 우울 숫자 반대로 소프트웨어를 포함한 모든 유형의 다양한이야. '마이크로 소프트'기능이 전략은 특히 온라인 게임의 전체 세계에, 그럼에도 불구하고 내가 네 요구 사항에 매우 중요합니다 다가오는 상세 패싯에 대한 도박을 할 수 있습니다 모르겠어요. 아이팟 따라서 종종 우수한 대안입니다.
2011.08.15 15:37 [ ADDR : EDIT/ DEL : REPLY ]