我使用jackosn序列化一個POJO,並且我希望用戶設置某個值的所有值不論是否爲null都必須包含在序列化中。Jackson包含由用戶設置的空值?
所以目前:
POJO:
public class YourItem {
public String key;
public String item;
}
目前當用戶執行:
YourItem item = new YourItem();
item.setKey("abc");
連載給出:
{
"key" : "abc"
}
爲我配置ObjectMapper
作爲objectMapper.setInclude(Include.NON_NULL)
但是,現在如果用戶專門調用setter並將值設置爲null,那麼我希望在我的序列化字符串中的那個項目。 因此,如果用戶確實
YourItem item = new YourItem();
item.setKey("abc");
item.setItem(null);
我想在serialzation key和項目值都存在這樣的:
{
"key" : "abc",
"item" : null
}
我如何用戶設置爲null和默認空區分。 在ObjectMapper中是否有配置?
確實有重複的地方,但嘗試'NON_DEFAULT'。 –
@SotiriosDelimanolis:我已經嘗試過'NON_DEFAULT',但它沒有區別。用戶設置的空值被省略 –
這不是你想要的嗎? –