以下の内容はhttps://wrongwrong163377.hatenablog.com/entry/2019/05/29/183145より取得しました。
やりたかったこと
vuejs-datepickerでPOSTした日時から、サーバーサイドで日付を取得する
問題の概要
vuejs-datepickerはタイムゾーンまで含めてデータを出力する
- Jacksonはフォーマット設定をしなければ受け取った日時をGMT基準(=日本時間-9時間)に変換し、それを
LocalDateに変換する
- このため、サーバーサイドが受け取った
LocalDateが日本時間の9時間前(= 時間によっては昨日)になった
補足
- 自分のやっていた環境では、
vuejs-datepickerの出力するデフォルト時間は日本時間で9時に設定されており、サーバーサイドで時間は利用していなかった
- このため、日本時間で9時未満が出力されるような特定の操作をしなければ症状が再現できなかった
対策
- 本来はJacksonが解釈する日時のフォーマットを決定し、設定しておくべき
- 日付しか必要なく、応急的な対処でよいのであれば、時間情報を無くして(e.g. ハイフン区切り:
2019-01-01)POSTすればズレることは無くなる
結論
- 日時扱うときは日時表現のフォーマットや設定にまで気を配った方がよい
以上の内容はhttps://wrongwrong163377.hatenablog.com/entry/2019/05/29/183145より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます
不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14