以下场景应用及后台取值 用到com.alibaba.fastjson.annotation(fastjson 阿里巴巴开源框架)以及springBoot注解
Date
| 名称 | 解释 |
|---|---|
| 显示格式 | YYYY-MM-DD |
| 显示范围 | 1901-01-01 到 9999-01-01 |
| 应用场景 | 当业务需求中只需要精确到天时,可以用这个时间格式 |
| 后台取值 | @JSONField(format=“yyyy-MM-dd”) |
DateTime
| 名称 | 解释 |
|---|---|
| 显示格式 | YYYY-MM-DD HH:mm:ss |
| 显示范围 | 1601-01-01 00:00:00 到 9999-12-31 23:59:59 |
| 应用场景 | 当业务需求中需要精确到秒时,可以用这个时间格式 |
| 后台取值 | @JSONField(format=“yyyy-MM-dd HH:mm:ss”) |
TimeStamp
| 名称 | 解释 |
|---|---|
| 显示格式 | YYYY-MM-DD HH:mm:ss |
| 显示范围 | 1601-01-01 00:00:00 到 9999-12-31 23:59:59 |
| 应用场景 | 当业务需求中需要精确到秒或者毫秒时,或者该系统用于不同时区,可以用这个时间格式 |
| 后台取值 | @JSONField(format=“yyyy-MM-dd HH:mm:ss:SSS”)(这里只会精确到秒) |
Time
| 名称 | 解释 |
|---|---|
| 显示格式 | HH:mm:ss |
| 显示范围 | 00:00:00 到 23:59:59 |
| 应用场景 | 当业务需求中只需要每天的时间,可以用这个时间格式 |
| 后台取值 | @JSONField(format=“HH:mm”)(这里是只精确到分,数据库存的也就是只精确到分,比如 09:36:00,如果需要精确到秒。需要使用@JSONField(format=“HH:mm:ss”)) |
Date,DateTime,TimeStamp和Time 比较
误区:之前我也也为datetime和TimeStamp是一样的,因为他们在数据库存的时间都是YYYY-MM-DD HH:mm:ss格式的,但是TimeStamp类型存的是10位或者13位的时间戳,不要被表现骗了,使用
select UNIX_TIMESTAMP(TIME) date from table即可获取时间戳里面具体存的什么
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207195.html原文链接:https://javaforall.net
