Les objets JSON sont souvent sujets à des modifications, ce qui peut entraîner des erreurs lors de l'utilisation d'une bibliothèque comme Jackson pour les convertir en POJO cours. Jackson est une bibliothèque de traitement JSON populaire qui permet d'ignorer les champs nouvellement ajoutés dans les objets JSON.
Lorsqu'un objet JSON comporte des champs supplémentaires qui ne sont pas présents dans la classe POJO correspondante , Jackson ne parviendra pas à convertir l'objet. Cela peut se produire même si les nouveaux champs sont facultatifs et peuvent être ignorés en toute sécurité.
Jackson fournit l'annotation @JsonIgnoreProperties qui peut être appliquée à une classe pour ignorer les propriétés inconnues. pendant la désérialisation. Lorsqu'elle est utilisée avec ignoreUnknown = true, cette annotation amènera Jackson à ignorer toutes les propriétés qui ne sont pas présentes dans la classe POJO.
Pour utiliser @JsonIgnoreProperties, ajoutez simplement l'annotation suivante en haut de votre classe POJO :
@JsonIgnoreProperties(ignoreUnknown = true) public class Foo { // Class fields }
Selon la version de Jackson que vous utilisez, vous devrez importer la classe correcte pour @JsonIgnoreProperties :
Pour Jackson 2.x :
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
Pour Jackson 1.x :
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
En utilisant @JsonIgnoreProperties, vous pouvez empêcher Jackson de se briser lorsque les objets JSON contiennent de nouveaux champs. Cette annotation fournit un moyen simple et efficace de gérer les schémas JSON évolutifs et de garantir que votre code reste stable même lorsque les objets JSON changent.
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!