Spring Boot では、JSON 出力用に Java 8 LocalDateTime オブジェクトをフォーマットすると課題が生じる可能性があります。従来の日付書式設定は期待どおりに機能しますが、LocalDateTime には特有の書式設定の問題があります。
よくある問題の 1 つは、LocalDateTime フィールドが、代わりに「年」、「月」などの属性を含む詳細な構造に変換されることです。単純な文字列表現です。この問題に対処するには、追加の構成が必要です。
これを解決するには、次の手順に従います:
Jackson 依存関係を追加します:
次の依存関係をプロジェクト:
compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")
Configure Spring:
次の行をアプリケーションのプロパティfile:
spring.jackson.serialization.write_dates_as_timestamps=false
これで、Spring Boot は自動的にLocalDateTime コンバーターを登録します。ただし、日付形式をカスタマイズしたい場合は、次の注釈を使用できます:
注: Spring Boot 2.x では、Spring が LocalDateTime 変換をネイティブに処理するようになったため、上記の構成手順は不要になりました。
以上がSpring Boot で Java 8 LocalDateTime を JSON に適切にシリアル化する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。