개발노트
jstl fmt:formatDate pattern 다시 확인하자
대단한넘
2013. 7. 22. 00:20
jstl 에서 dateformat으로 표현할때는 <tmf:formatDate>를 사용합니다.
시간을 나타낼때는 보통 다음과 같이 24시간제를 자주 사용하곤 했습니다.
표현법은 java 의 SimpleDateFormat 을 따릅니다.
<fmt:formatDate value="${a.regDate}" pattern="yyyy-MM-dd KK:mm:ss"/>
or
<fmt:formatDate value="${a.regDate}" pattern="yyyy-MM-dd HH:mm:ss"/>
하지만 위의 표현은 틀린것이라는 것을 최근에 알았습니다.
0~23시까지 나타내는 HH를 사용하던 버릇 그대로 1~24시까지 나타낼때도 대문자 KK를 그대로 사용하고 있었는데, 이게 대문자가 아닌 소문자 k라는 것을 최근에 알았던 것입니다.
그런데 저만 그런것이 아닌것 같습니다. 검색해서 찾아보면 몇몇 블로그에서 서로 다르게 가이드 하고 있습니다.
직접 두번, 세번 확인한 결과
h : 1~12
H : 0~ 23
k : 1~ 24
K :0 ~11
입니다.
다음 표는 java 1.4.2 정식문서에 있는 것입니다.
Letter | Date or Time Component | Presentation | Examples |
---|---|---|---|
G
| Era designator | Text | AD
|
y
| Year | Year | 1996 ; 96
|
M
| Month in year | Month | July ; Jul ; 07
|
w
| Week in year | Number | 27
|
W
| Week in month | Number | 2
|
D
| Day in year | Number | 189
|
d
| Day in month | Number | 10
|
F
| Day of week in month | Number | 2
|
E
| Day in week | Text | Tuesday ; Tue
|
a
| Am/pm marker | Text | PM
|
H
| Hour in day (0-23) | Number | 0
|
k
| Hour in day (1-24) | Number | 24
|
K
| Hour in am/pm (0-11) | Number | 0
|
h
| Hour in am/pm (1-12) | Number | 12
|
m
| Minute in hour | Number | 30
|
s
| Second in minute | Number | 55
|
S
| Millisecond | Number | 978
|
z
| Time zone | General time zone | Pacific Standard Time ; PST ; GMT-08:00
|
Z
| Time zone | RFC 822 time zone | -0800 |