如果它是0,则返回值

时间:2017-07-04 20:23:45

标签: java serialization jackson

我有以下课程

@JsonInclude(JsonInclude.Include.NON_DEFAULT)
public class Order {
    private OrderId orderId;
    private int daysElapsed;
    private List<Item> items;
}

目前,如果daysElapsed0,则不会将其作为回复对象的一部分。我希望它在那里。杰克逊有什么东西可以处理吗?

我正在考虑使用Integer类并使用注释NON_NULL来排除它。有没有更好的方法呢?

1 个答案:

答案 0 :(得分:1)

您只包含NON_DEFAULT个值。 int字段的默认值为0。因此,当daysElapsed0时,其值等于默认值,因此不包含在JSON中。

只需删除@JsonInclude(JsonInclude.Include.NON_DEFAULT)注释即可。