笔者在平时开发运维过程中经常遇到日期格式化处理的问题,由于Oracle不区分大小写,所以部分字段的格式化必然不一样,从而导致部分字段混淆。为此特别整理了如下表格,希望能有所帮助。
表格中罗列了日常开发的常见格式化字段,可以满足日常开发运维需要。
含义 | Java符号 | Oracle符号 | 备注 |
---|---|---|---|
era designator | G | AC/A.C. | 需结合本地化处理 |
century | – | CC/SCC | S前缀指定如遇公元前的显示,会在显示前加(-) |
year | y | Y | |
month in year | M | M/MON/MONTH | MON返回指定日期的月份简写;MONTH 返回指定日期的月份全称 |
day in month | dd | DD | |
hour in am/pm (1-12) | h | HH12/HH | |
hour in day (0-23) | H | HH24 | |
minute in hour | m | MI | |
second in minute | s | SS | |
millisecond | S | FF[1-9] | Oracle中Date没有毫秒,timestamp才有此格式 |
day in week | E | D/DAY | D以1~7表示周一至周日,DAY则返回具体名称 |
day in year | D | DDD | |
quarter | – | Q | |
day of week in month | – | F | |
week in year | w | WW | |
week in month | W | W | |
am/pm marker | a | AM/PM | |
hour in day (1-24) | k | – | |
hour in am/pm (0-11) | K | – | |
time zone | z | TZR |