Maison >Java >javaDidacticiel >Comment formater correctement Java 8 LocalDateTime dans les réponses JSON Spring Boot ?

Comment formater correctement Java 8 LocalDateTime dans les réponses JSON Spring Boot ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-28 18:35:10921parcourir

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

Format JSON Java 8 LocalDateTime dans Spring Boot

Lorsque vous traitez LocalDateTime de Java 8 dans une application Spring Boot, il est courant de rencontrer des problèmes de formatage. Dans cet article, nous examinerons le problème et proposerons une solution.

Problème

Certains utilisateurs signalent que les objets LocalDateTime sont convertis dans un format non conventionnel :

"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"
    }
  }

Lorsque le format souhaité est :

"startDate": "2015-01-01"

Malgré les annotations telles que @JsonFormat et @DateTimeFormat, le problème de formatage persiste.

Solution

Afin d'obtenir le format souhaité, nous devons suivre les étapes suivantes :

  1. Ajoutez ce qui suit dépendance :

    compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")

Cette dépendance fournit un convertisseur pour les types de date et d'heure Java 8.

  1. Mettre à jour l'application .properties :

    spring.jackson.serialization.write_dates_as_timestamps=false

Ce paramètre garantit que le convertisseur est utilisé et que les dates sont formatées dans le format souhaité.

  1. Utiliser des annotations pour un formatage personnalisé (facultatif) :
    Si vous souhaitez personnaliser davantage le formatage , vous pouvez utiliser des annotations telles que @JsonFormat et @DateTimeFormat. Toutefois, ces annotations ne sont nécessaires que si vous souhaitez modifier le format par défaut.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn