Jackson Java zum JSON-Objekt-Mapper ändert den Feldnamen

8

Mit Jackson ein Java-Objekt in JSON konvertieren

%Vor%

Das Ergebnis ist das Feld "Teilnehmer" (welches Teil der Objektinstanz ist)

%Vor%

wird in "participantsList"

umbenannt %Vor%

d. "List" wird an den Feldnamen angehängt. Ich habe die Jackson-Dokumentation durchgesehen, aber ich habe keinen Weg gefunden, dies zu verhindern. Ist das möglich? Das Testen des obigen Codes in einem eigenständigen Projekt verursacht nicht das gleiche Ergebnis (d. H. Es findet keine Umbenennung statt). Warum verhält sich Jackson so? Leider ist das Objekt ein Drittanbieter und ich kann es nicht ändern.

Mit Jackson Version 2.3.3 (das gleiche Verhalten wurde mit 2.9.0 verifiziert).

    
heeboir 04.08.2017, 12:31
quelle

2 Antworten

4

Oleksandrs Kommentar zeigte in die richtige Richtung. Tatsächlich gibt es eine getParticipantsList (), die Jackson bei der Bestimmung des JSON-Feldnamens zu berücksichtigen scheint. Wie ich jedoch schon geschrieben habe, kann ich dort keine Änderungen vornehmen, da es sich um ein Objekt Dritter handelt.

Aber mit einem besseren Verständnis dafür, was das Problem verursacht, war ich in der Lage, eine Lösung zu finden:

%Vor%

oder

%Vor%     
heeboir 08.08.2017, 12:04
quelle
-1

Vielleicht können Sie USE_ANNOTATIONS verwenden, um Anmerkungen wie folgt zu überspringen:

%Vor%     
flytosea 15.08.2017 03:07
quelle

Tags und Links