jackson,如果某个字段为0为空为默认,不序列化

本文介绍了如何使用Jackson库在序列化对象时,通过注解和代码设置,避免包含0、空值或默认值的字段。包括了在实体类和全局配置中的注解应用,以及如何定制mapper对象的序列化规则。

使用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对象进行设置,所有序列化的对象都将按改动后的规则进行系列化

转自:https://www.cnblogs.com/chenglc/p/9123771.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值