を使用しているとき、私は次の属性が含まれているクラスがあります。間違った時間@JsonFormat(1時間)
@JsonFormat(pattern= "yyyy/MM/dd hh:mm")
private java.util.Date begin;
は今、私は私のRESTサービスへの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時間追加されます。
@JsonFormat(pattern= Constants.TIMESTAMP_FORMAT, timezone = "CET")
private Date begin;
しかし、夏に我々はCESTを持っているので、私は、タイムゾーンをハードコーディングすることはできません。
一つの解決策は、使用することです。
すべてのソリューションはありますか?ありがとう!
Btw:当初の日付はjquery datetimepickerに由来します。
ジャクソンのデフォルト、私はあなたのサーバーアプリケーションでUTC時間で純粋な対処をお勧めします、と考えるでしょう純粋にフロントエンドの関心事であるユーザーのタイムゾーンに変換します。したがって、APIはたとえばUnixタイムスタンプまたはISO8601文字列。 – chaoluo
の背後にGMTを使用する – jonrsharpe