Jackson忽略json数组中null元素

文章讨论了前端传来的json字符串中包含null字符导致Spring使用Jackson反序列化时List大小不匹配的问题。通过在字段上配置`@JsonSetter(nulls=Nulls.SKIP)`,可以忽略null并保持实际数组长度。建议前端预先过滤null值,尽管JSON标准允许但实践中需优化。
摘要由CSDN通过智能技术生成

问题

前端传过来的json字符串中,其中json数组包含null字符。类型如下:

["0","1","2",null]

这边Spring使用Jackson进行反序列化是会出现List对象中,包含null的数组元素。即List大小为4,本来List的大小应该为3。应该如何忽略将null反序列化成List数组中的一个空对象类?

解决

只需要在对应类的字段上面配置如下即可:

@JsonSetter(nulls = Nulls.SKIP)
private List<String> numbers;

这里就会跳过null字符,这样反序列化出来的大小就是3.

总结:

到这里就是jackson,反序列化成数组时,忽略null元素的处理。这种情况,最好在前端过滤掉这些null。尽管,json标准中确实有json数据组中包含null。

参考:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值