Est-il possible: d'avoir un champ dans la classe, mais des noms différents pour celui-ci lors de la sérialisation / désérialisation dans la bibliothèque Jackson?
Par exemple, j'ai la classe "Coordiantes".
class Coordinates{
int red;
}
Pour la désérialisation de JSON, vous voulez avoir un format comme celui-ci:
{
"red":12
}
Mais quand je sérialiserai un objet, le résultat devrait être comme celui-ci:
{
"r":12
}
J'ai essayé de l'implémenter en appliquant une @JsonProperty
annotation à la fois sur getter et setter (avec des valeurs différentes):
class Coordiantes{
int red;
@JsonProperty("r")
public byte getRed() {
return red;
}
@JsonProperty("red")
public void setRed(byte red) {
this.red = red;
}
}
mais j'ai une exception:
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: champ non reconnu "rouge"