Чи можливо: мати одне поле в класі, але різні назви для нього під час серіалізації / десеріалізації в бібліотеці Джексона?
Наприклад, у мене клас "Coordiantes".
class Coordinates{
int red;
}
Для десеріалізації від JSON хочемо мати такий формат:
{
"red":12
}
Але коли я серіалізую об'єкт, результат повинен бути таким:
{
"r":12
}
Я спробував реалізувати це, застосувавши @JsonProperty
анотацію як на getter, так і на setter (з різними значеннями):
class Coordiantes{
int red;
@JsonProperty("r")
public byte getRed() {
return red;
}
@JsonProperty("red")
public void setRed(byte red) {
this.red = red;
}
}
але я отримав виняток:
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Нерозпізнане поле "червоне"