歩みを積まなければ何千里もたどり着けず 小川を積まなければ川も海も作れず もがく自分へ
シーン:
フロントエンドは日付パラメーターをバックエンドに送信し、バックエンドは問題を受信します. この低レベルの問題は、発生したら要約します.
ドキュメント参照:
フロントエンドの日付形式: yyyy-MM-dd HH:mm:ss
正しい方法:
方法 1: バックエンドは日付型を使用して受信します
方法 2: バックエンドの日付型フィールドは @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") のみを使用して受信します
進入禁止:
方法 1: @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") のみを使用してバックエンドの日付型フィールドを受け取り、要求時にエラーを直接報告します。
@DateTimeFormat アノテーションを正しく使用する
方法 1: 受信オブジェクトに @RequestBody を追加し、 @JsonFormat で使用する
方法 2: 受信オブジェクトは@RequestBody を追加せず、日付型フィールドは @DateTimeFormate のみを使用する
注:ここで使用されるリクエスト ボディは form-date です. リクエスト ボディ json を使用する場合、次のリクエスト バックエンドの日付タイプ フィールドを使用すると、データを受け取りません
要約:
バックエンドが日付型フィールドで受信したときに、フロントエンドの日付文字列がバックエンド渡されるとき
1. 受信オブジェクトは @RequestBody と @DateTimeFormat および @JsonForma を使用します。
2. 受信オブジェクトは、@RequestBody と @JsonForma を使用して、日付文字列を日付形式に変換します。
3. 受信オブジェクトは @RequestBody で装飾する必要はありません。リクエストボディのフォームデータ型 (json 型は許可されていません) は@DateTimeFormat を渡すことができます。
日付文字列を日付形式に変換する