Heim > Java > javaLernprogramm > Wie kann ich verhindern, dass Jackson Nullfelder serialisiert?

Wie kann ich verhindern, dass Jackson Nullfelder serialisiert?

Linda Hamilton
Freigeben: 2024-12-18 07:04:11
Original
621 Leute haben es durchsucht

How Can I Prevent Jackson from Serializing Null Fields?

Nullfeld-Serialisierung mit Jackson überspringen

Jackson bietet mehrere Möglichkeiten, die Serialisierung von Feldern mit Nullwerten zu unterdrücken. Dies kann nützlich sein, um die Größe serialisierter Daten zu reduzieren oder um sicherzustellen, dass bestimmte Felder nicht extern verfügbar gemacht werden.

Konfigurieren des ObjectMapper

Um Jackson global so zu konfigurieren, dass Null ignoriert wird Werte können Sie die SerializationInclusion-Eigenschaft des ObjectMapper festlegen:

mapper.setSerializationInclusion(Include.NON_NULL);
Nach dem Login kopieren

Dies führt dazu, dass Jackson währenddessen jedes Feld mit einem Nullwert überspringt Serialisierung.

Verwenden der @JsonInclude-Annotation

Für einzelne Felder können Sie die @JsonInclude-Annotation verwenden, um zu steuern, wie Nullwerte behandelt werden:

class SomeClass {
   @JsonInclude(Include.NON_NULL)
   private String someValue; 
}
Nach dem Login kopieren

Mit dieser Annotation wird das someValue-Feld nur dann serialisiert, wenn dies nicht der Fall ist null.

Verwendung von @JsonInclude mit Gettern

Alternativ können Sie @JsonInclude in einer Getter-Methode verwenden, um Felder basierend auf dem Wert selektiv auszuschließen:

class SomeClass {
   private String someValue; 

   @JsonInclude(value=Include.NON_NULL, content=Include.ALWAYS)
   public String getSomeValue() {
      return someValue;
   }
}
Nach dem Login kopieren

In diesem Beispiel wird das someValue-Feld von der Serialisierung ausgeschlossen, wenn es null ist, aber es wird einbezogen, wenn es nicht null ist null, auch wenn es eine leere Zeichenfolge ist.

Das obige ist der detaillierte Inhalt vonWie kann ich verhindern, dass Jackson Nullfelder serialisiert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage