ホームページ > Java > &#&チュートリアル > Spring Boot を使用して Java 8 LocalDateTime オブジェクトを JSON で簡潔にフォーマットするにはどうすればよいですか?

Spring Boot を使用して Java 8 LocalDateTime オブジェクトを JSON で簡潔にフォーマットするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-26 12:13:09
オリジナル
977 人が閲覧しました

How Can I Format Java 8 LocalDateTime Objects Concisely in JSON with Spring Boot?

Spring Boot 経由で JSON で Java 8 LocalDateTime をフォーマットする

現代のシステムでは、シリアル化および逆シリアル化中に一時データの一貫した直感的な形式を維持することが不可欠です。アプリケーション開発。ただし、Spring Boot アプリケーションで Java 8 LocalDateTime オブジェクトをフォーマットすると、多くの場合、問題が発生することがあります。

問題:

Spring Boot アプリケーション内で 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"
    }
  }
ログイン後にコピー

Desired結果:

目標は、LocalDateTime オブジェクトを次のような、より簡潔で読みやすい形式にフォーマットすることです。

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

解決策:

希望の書式設定を実現するには、ユーザーはまず次の依存関係を自分のファイルに追加する必要があります。 project:

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

この依存関係は、LocalDateTime オブジェクトの変換を自動的に処理するコンバーターを導入します。さらに、次の設定を application.properties ファイルに追加する必要があります:

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

このプロパティを false に設定すると、Spring は適切なコンバータを利用して、タイムスタンプではなく文字列として日付をフォーマットします。特定の書式設定が必要な場合は、@JsonFormat や @DateTimeFormat などの注釈を使用できます。

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

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