Printemps de Démarrage LocalDate champ de sérialisation et de désérialisation
Sur le printemps de démarrage 1.2.3.VERSION avec fasterxml quelle est la bonne façon de sérialisation et de la sérialisation d'un LocalDate champ de date iso chaîne formatée?
J'ai essayé:
printemps.jackson.la sérialisation.écrivez-dates-comme-les horodatages:faux en application.fichier de propriétés,
y compris jackson-type de données-jsr310 en projet, puis en utilisant
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
annotation
et @DateTimeFormat(iso=ISO.DATE)
annotation,
ajoutant Jsr310DateTimeFormatAnnotationFormatterfactory en tant que formateur:
@Override public void addFormatters(FormatterRegistry registre) {
de registre.addFormatterForFieldAnnotation(nouveau
Jsr310DateTimeFormatAnnotationFormatterfactory()); }
Aucun de ces aidé.
OriginalL'auteur aycanadal | 2015-06-16
Vous devez vous connecter pour publier un commentaire.
dans la construction.gradle
et puis annotations suivantes aidé:
Mise à jour: si vous utilisez le Printemps de Démarrage 2.*, la dépendance est déjà inclus par l'intermédiaire de l'un des "starters".
pouvez-vous spécifié vous une solution?
Oui, vous avez besoin de la com.fasterxml.jackson.type de données:jackson-type de données-jsr310 dépendance et puis vous pouvez utiliser
@JsonDeserialize
@JsonSerialize
annotations avec le LocalDate champ à l'aide de LocalDateSerializer comme dans la réponse.Ne fonctionne pas pour moi sur SpringBoot 1.3.6.La LIBÉRATION ;/ erreur:
com.fasterxml.jackson.datatype.jsr310.ser.JSR310FormattedSerializerBase.findFormatOverrides(Lcom/fasterxml/jackson/databind/SerializerProvider;Lcom/fasterxml/jackson/databind/BeanProperty;Ljava/lang/Class;)Lcom/fasterxml/jackson/annotation/JsonFormat$Value;
résolu mon problème. avec LocalDateTime jackson de la désérialisation, merci
OriginalL'auteur aycanadal
En fait, cela fonctionne si vous il suffit de spécifier la dépendance dans le pom.xml.
Avec cela, tous mes LocalDate champs automatiquement utiliser le format ISO, pas besoin de les annoter:
Testé sur le Printemps de Démarrage 1.5.7.
OriginalL'auteur Tomo Česnik
Si vous souhaitez utiliser un custom Java Date de formateur, ajouter le
@JsonFormat
annotation.OriginalL'auteur Radouane ROUFID
Dans mon Printemps Boot 2 applications
@JsonFormat
annotation est utilisée dans le RESTE des contrôleurs à la (dé)sérialisation des données JSON.@DateTimeFormat
annotation est utilisée dans d'autres contrôleurs deModelAttribute
s lors de la (dé)sérialisation des données de Chaîne.Vous pouvez spécifier à la fois sur le même champ (utile si vous partagez DTO entre JSON et Thymeleaf modèles):
Gradle dépendance:
J'espère que c'est toute la configuration dont vous avez besoin pour personnaliser la Date/Heure de mise en forme au Printemps de Démarrage 2.x des applications.
Pour Le Printemps De Démarrage 1.x des applications, ajouter des annotations et de la dépendance:
OriginalL'auteur naXa