Wie ignoriere ich "null" oder leere Eigenschaften in json, global, mit Spring-Konfiguration

8

Ich versuche, nur die Eigenschaften zurückzugeben, die Werte haben, aber die Nullwerte werden ebenfalls zurückgegeben.

Ich weiß, dass es eine Annotation gibt, die das tut ( @JsonInclude(Include.NON_NULL) ), aber dann brauche ich diese in jeder einzelnen Entitätsklasse.

Meine Frage lautet also: Gibt es eine Möglichkeit, dies global über die Spring-Konfiguration zu konfigurieren? (Vermeiden von XML, vorzugsweise)

EDIT: Es scheint, dass diese Frage als ein Duplikat angesehen wurde, aber ich denke nicht. Die wirkliche Frage ist hier, wie man es über die Spring-Konfiguration konfiguriert, die ich in anderen Fragen nicht finden konnte.

    
Pedro Silva 08.08.2016, 11:53
quelle

3 Antworten

14

Wenn Sie Spring Boot verwenden, ist dies so einfach wie:

%Vor%

Wenn nicht, können Sie den ObjectMapper im MappingJackson2HttpMessageConverter wie folgt konfigurieren:

%Vor%     
Jon Peterson 08.08.2016, 12:30
quelle
3

Wenn Sie jackson ObjectMapper zum Generieren von json verwenden, können Sie den folgenden benutzerdefinierten ObjectMapper für diesen Zweck definieren und stattdessen verwenden:

%Vor%     
Abolfazl Hashemi 08.08.2016 12:19
quelle
0

Die programmatische Alternative zu Abolfazl Hashemi lautet wie folgt:

%Vor%

Auf diese Weise teilen Sie dem Spring-Container grundsätzlich mit, dass jedes Mal, wenn ObjectMapper verwendet wird, nur Eigenschaften mit Nicht-Null-Werten in die Zuordnungen eingeschlossen werden sollen.

    
aribeiro 26.10.2017 11:10
quelle

Tags und Links