Maison >Java >javaDidacticiel >Comment puis-je appliquer sélectivement @JsonIgnore pour la sérialisation uniquement à Jackson ?
Lorsque vous travaillez avec des données sensibles pendant la sérialisation et la désérialisation, il est souvent souhaitable d'exclure certaines propriétés de la transmission. L'annotation @JsonIgnore offre cette fonctionnalité, mais elle s'applique par défaut à la sérialisation et à la désérialisation. Pour les scénarios dans lesquels vous devez supprimer le chiffrement pour la sérialisation uniquement, voici comment y parvenir :
Avant la version 1.9 de Jackson, vous pouviez restreindre @JsonIgnore aux méthodes getter pour activer la désérialisation tout en la désactivant pour la sérialisation. Cela signifiait annoter uniquement le getter avec @JsonIgnore.
Dans les versions ultérieures de Jackson, l'annotation @JsonProperty offre une flexibilité supplémentaire. Pour appliquer @JsonIgnore uniquement à la sérialisation :
Pour les versions avec l'annotation @JsonProperty.Access de Jackson, vous disposez d'une autre option :
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String password;
Cela permet la sérialisation du mot de passe mais empêche sa désérialisation, le sécurisant efficacement. Reportez-vous à la documentation de Jackson pour plus de détails.
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!