[JAVA] Ignorer les paramètres qui n'existent pas dans le modèle avec ObjectMapper # readValue

Une note à laquelle j'étais accro en recevant une réponse au format json d'une API externe et en la convertissant en classe de modèle.

De quoi êtes-vous accro?

Je convertis json en modèle avec com.fasterxml.jackson.databind.ObjectMapper # readValue (String, TypeReference), mais une exception se produit s'il y a un élément dans json qui n'existe pas dans le champ de modèle.

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException

Solution

Ajoutez @JsonIgnoreProperties (ignoreUnknown = true) à la classe de modèle.

@NoArgsConstructor
@JsonNaming(SnakeCaseStrategy.class)
@JsonAutoDetect(getterVisibility = Visibility.NONE)
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class hogehoge {
}

Comme ça.

Chan Chan.

Recommended Posts

Ignorer les paramètres qui n'existent pas dans le modèle avec ObjectMapper # readValue
[Gradle] L'histoire selon laquelle le fichier de classe n'existait pas dans le fichier jar
Ebean.update () n'est pas exécuté dans le modèle hérité.
Traitement lorsqu'un ID qui n'existe pas dans la base de données est entré dans l'URL
Mémo qui passe à l'écran de connexion si vous n'êtes pas connecté avec l'appareil
[Journal de développement ⑬] Ne laissez pas 0 être entré dans le formulaire !!
Que faire lorsque la "relation" hibernate_sequence "n'existe pas" dans la colonne ID de PostgreSQL + JPA
Correction d'un problème où l'événement de défilement ne se déclenchait pas dans JQuery
Que faire lorsque les modifications du servlet ne sont pas reflétées
Le problème que l'attribut du modèle User devient nul dans ActionMailer
[Swift] Formes variables qui n'ont pas été enseignées dans le livre d'introduction