Ist es möglich, ein Feld in der Klasse zu haben, aber während der Serialisierung / Deserialisierung in der Jackson-Bibliothek unterschiedliche Namen dafür?
Zum Beispiel habe ich Klasse "Coordiantes".
class Coordinates{
int red;
}
Für die Deserialisierung von JSON möchten Sie ein Format wie das folgende haben:
{
"red":12
}
Aber wenn ich das Objekt serialisieren werde, sollte das Ergebnis wie folgt aussehen:
{
"r":12
}
Ich habe versucht, dies zu implementieren, indem ich @JsonProperty
Annotation sowohl auf Getter als auch auf Setter (mit unterschiedlichen Werten) angewendet habe:
class Coordiantes{
int red;
@JsonProperty("r")
public byte getRed() {
return red;
}
@JsonProperty("red")
public void setRed(byte red) {
this.red = red;
}
}
aber ich habe eine Ausnahme:
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Nicht erkanntes Feld "rot"