2008/11/07 00:16

[JAVA] Calendar 시간 설정.

오늘 회사에서 테스트 꼼꼼하게 안했으면 또 릴리즈 망할뻔함.
하루에 한번 자바로 만든 배치가 기동되서 데이터베이스 갱신하는데
Calendar 클래스를 잘못 써버림....


위에 코드를 오후(12:00 ~ 23:59)와 오전(00:00 ~ 11:59)에 실행한 값이 서로 다르다는 점...;;;
Calendar.HOUR 로 시간을 설정하면 12시간제로 계산되서 0를 넣었을때 오전에는 0시 오후에는 12시가 출력 되버림.
어떻게 보면 오전 오후 1시부터 12시까지 쓰는 우리한테는 당연한거 같긴하지만.

아...[시간설정1]인데 [시간설정2]로 출력되버렸네...오타닷


Calendar.HOUR_OF_DAY 로 시간을 설정하면 오전 오후 상관없이 지정한 값이 들어가네.

*정상~부가설명*
Calendar.HOUR
는 12시간제이므로, 0-12 AM, 0-12PM이 있고,
Calendar.HOUR_OF_DAY 는 24시간제이므로 0-24이다
따라서 Calendar.HOUR를 써서 세팅하고자 할 때는,
Calendar.AM, Calendar.PM과 함께 세팅해주어야 원하는 시간을 지정할 수 있다


HOUR

public static final int HOUR
Field number for get and set indicating the hour of the morning or afternoon. HOUR is used for the 12-hour clock (0 - 11). Noon and midnight are represented by 0, not by 12. E.g., at 10:04:15.250 PM the HOUR is 10.

See Also:
AM_PM, HOUR_OF_DAY, Constant Field Values

HOUR_OF_DAY

public static final int HOUR_OF_DAY
Field number for get and set indicating the hour of the day. HOUR_OF_DAY is used for the 24-hour clock. E.g., at 10:04:15.250 PM the HOUR_OF_DAY is 22.

See Also:
HOUR, Constant Field Values

API를 보니 설명이 아주 잘되어 있었네..에효

테스트의 소중함을 다시한번 깨닭은 하루~
문제는 테스트 하다보면 눈이 반쯤 감겨있다는 것!

이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 0