Maison >Java >javaDidacticiel >Comment ignorer les champs nuls lors de la sérialisation avec Jackson ?

Comment ignorer les champs nuls lors de la sérialisation avec Jackson ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-17 08:24:25313parcourir

How to Ignore Null Fields When Serializing with Jackson?

Ignorer les champs nuls lors de la sérialisation de Jackson

Lors de la sérialisation de données à l'aide de Jackson, il peut être indésirable d'inclure des valeurs nulles dans la sortie. Cet article explique comment configurer Jackson pour ignorer les champs avec des valeurs nulles lors de la sérialisation, fournissant des solutions pour les versions de Jackson supérieures à 2.0 et les versions antérieures.

Jackson >2.0

Pour empêcher les valeurs nulles de étant sérialisé dans les versions Jackson supérieures à 2.0, vous pouvez configurer l'ObjectMapper directement à l'aide de setSerializationInclusion method:

mapper.setSerializationInclusion(Include.NON_NULL);

Jackson <=2.0

Pour les versions antérieures de Jackson, vous pouvez utiliser l'annotation @JsonInclude pour spécifier les règles d'inclusion pour un champ spécifique :

@JsonInclude(Include.NON_NULL)
class Foo
{
  String bar;
}

Obtenir les valeurs manuellement

Vous pouvez également utiliser l'annotation @JsonInclude sur une méthode getter pour contrôler si un champ est inclus ou non dans la sortie sérialisée :

class Foo
{
  String bar;

  @JsonInclude(Include.NON_NULL)
  public String getBar() {
    return bar;
  }
}

Cette approche vous permet de garder le contrôle sur le comportement de sérialisation, en garantissant que les valeurs nulles ne sont incluses que lorsque cela est explicitement souhaité.

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