4
私は日付フィールドを持つ単純なJavaオブジェクトを持っている: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
クラスには、タイムゾーン情報が含まれているのか、それとも長いタイムスタンプのタイムスタンプだけが含まれていますか? Spring boot
は、DTONをJSONにシリアル化するときにデフォルトでUTC
形式を使用していますか?
デバッガではデフォルトのDate.toString出力が表示されます。詳しくはhttps://codeblog.jonskeet.uk/2017/04/23/all-about-java-util-date/ –
を参照してください。日付クラスは時間をサポートしていませんゾーンは常に有効なUTCです。場合によっては、UTCがBST(英国標準時)として表示されることがあります。 –