2

次の属性を含むクラスがあります。

@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から来ています。

4

1 に答える 1