เป็นไปได้หรือไม่: มีหนึ่งฟิลด์ในชั้นเรียน แต่มีชื่อแตกต่างกันระหว่างการทำให้เป็นอันดับ / การดีซีเรียลไลซ์เซชันในไลบรารีของ Jackson
ตัวอย่างเช่นฉันมีคลาส "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: ฟิลด์ที่ไม่รู้จัก "สีแดง"