次の属性を含むクラスがあります。
@JsonFormat(pattern= "yyyy/MM/dd hh:mm")
private java.util.Date begin;
今、残りのサービスに POST を実行します。
mockMvc.perform(post("/rest/foo")
.accept(MediaType.APPLICATION_JSON)
.contentType(MediaType.APPLICATION_JSON)
.content("{ \"begin\": \"2016/12/04 10:20\" }")
.andExpect(status().isOk())
.andReturn();
最後に、「begin」変数に値があります: Sun Dec 04 11:20:00 CET 2016
したがって、どういうわけか、JSON からオブジェクトへのマッピングにより 1 時間が追加されます。
1 つの解決策は、次を使用することです。
@JsonFormat(pattern= Constants.TIMESTAMP_FORMAT, timezone = "CET")
private Date begin;
しかし、夏には CEST があるため、タイム ゾーンをハードコードすることはできません。
解決策はありますか?ありがとう!
ところで:もともと日付はjquery datetimepickerから来ています。