0
我使用jackson的spring引導來提供API。 在我的數據庫中有一個泛化/專業領域。這意味着,我有兩個字段:一個值和一個字段,用於定義值的數據類型。Jackson:序列化EER專業化
所以我的實體是這樣的:
public class Example{
private String value;
private String type;
// getters and setters
}
例如用這三個條目:
"1234";"Integer"
"example string";"String"
"true";"Boolean"
傑克遜序列化此如下:
[{
"value": "1234",
"type": "Integer"
},
{
"value": "example string",
"type": "String"
},
{
"value": "true",
"type": "Boolean"
}]
這是我expteced ,但是,我需要這個:
[{
"value": 1234,
"type": "Integer"
},
{
"value": "example string",
"type": "String"
},
{
"value": true,
"type": "Boolean"
}]
所以,值應根據「類型」字段的值序列化。 我知道我可以將序列化程序附加到「值」字段,但我無法訪問那裏的「類型」字段以知道如何序列化值。
嗨!感謝那。 對於期望「value」的所有其他字段,如果沒有明確定義如何處理每個字段,是否也可以使用默認行爲?我的實體有很多字段,我不想在多個類(實體,序列化程序和反序列化程序...)中列出/管理它們全部... – Indivon
@Indivon我用新選項更新了答案,是的,你可以使用默認的反序列化您的自定義解串器。給我一分鐘,我會更新信息 – varren
@Indivon更新了我的文章,看看,可能還有其他一些選擇,你可以嘗試 – varren