使用jackson,如果某个字段 为0 or 为空 or 为默认,希望不序列化这个字段。
1、在实体类添加注解
@JsonInclude(JsonInclude.Include.NON_NULL)
将该注解放在字段上,如果该字段为null则不参与序列化;
如果放在类上边,那对这个类的全部属性起作用
Include.NON_DEFAULT 属性为默认值不序列化 (例如int为0,Object为null)
Include.NON_EMPTY 属性为 空("") 或者为 NULL 都不序列化
Include.NON_NULL 属性为NULL 不序列化
2、通过代码
ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
通过该方法对mapper对象进行设置,所有序列化的对象都将按改动后的规则进行系列化
本文介绍了如何使用Jackson库在序列化对象时,通过注解和代码设置,避免包含0、空值或默认值的字段。包括了在实体类和全局配置中的注解应用,以及如何定制mapper对象的序列化规则。
828

被折叠的 条评论
为什么被折叠?



