【发布时间】:2017-11-16 15:22:19
【问题描述】:
我有一个带有日期字段的简单 Java 对象:
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date date;
当我使用调试器调查日期时,我看到:
Wed Jun 14 00:00:00 BST 2017
但是一旦我用Spring boot controller 退回它,我就明白了:
"date": "2017-06-13 23:00:00"
- 造成这种差异的原因是什么?
- 为什么 Java 将日期视为
BST? - Java
Date类是否包含时区信息或仅包含长格式的普通时间戳? - 在将 DTO 序列化为 JSON 时,
Spring boot是否默认使用UTC格式?
【问题讨论】:
-
在调试器中你会看到默认的 Date.toString 输出,在codeblog.jonskeet.uk/2017/04/23/all-about-java-util-date阅读更多内容
-
Date 类不支持时区,并且始终有效地采用 UTC。有时,UTC 可能会显示为 BST,即“英国标准时间”。
标签: java date spring-boot timezone