ホームページ > Java > &#&チュートリアル > Spring Boot JSON 応答で Java 8 LocalDateTime を適切にフォーマットするにはどうすればよいですか?

Spring Boot JSON 応答で Java 8 LocalDateTime を適切にフォーマットするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-28 18:35:10
オリジナル
920 人が閲覧しました

How to Properly Format Java 8 LocalDateTime in Spring Boot JSON Responses?

Spring Boot での JSON Java 8 LocalDateTime 形式

Spring Boot アプリケーションで Java 8 の LocalDateTime を扱う場合、一般的に書式設定の課題に直面します。この記事では、この問題を調査し、解決策を提供します。

問題

一部のユーザーは、LocalDateTime オブジェクトが従来とは異なる形式に変換されていると報告しています:

"startDate" : {
    "year" : 2010,
    "month" : "JANUARY",
    "dayOfMonth" : 1,
    "dayOfWeek" : "FRIDAY",
    "dayOfYear" : 1,
    "monthValue" : 1,
    "hour" : 2,
    "minute" : 2,
    "second" : 0,
    "nano" : 0,
    "chronology" : {
      "id" : "ISO",
      "calendarType" : "iso8601"
    }
  }
ログイン後にコピー

希望する形式が次の場合:

"startDate": "2015-01-01"
ログイン後にコピー

のような注釈にもかかわらず@JsonFormat と @DateTimeFormat では、フォーマットの問題が解決されません。

解決策

目的のフォーマットを実現するには、次の手順を実行する必要があります:

  1. 以下を追加しますdependency:

    compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")
    ログイン後にコピー

この依存関係は、Java 8 の日付と時刻の型のコンバーターを提供します。

  1. Update application.properties:

    spring.jackson.serialization.write_dates_as_timestamps=false
    ログイン後にコピー

この設定により、コンバーターが使用され、日付が希望の形式でフォーマットされるようになります。

  1. カスタム書式設定に注釈を使用する (オプション):
    さらにカスタマイズしたい場合は、書式設定では、@JsonFormat や @DateTimeFormat などの注釈を使用できます。ただし、これらの注釈は、デフォルトの形式を変更する場合にのみ必要です。

以上がSpring Boot JSON 応答で Java 8 LocalDateTime を適切にフォーマットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート