用JSON.toJSONString转JSON时,属性的值为null时,输出的JSON里没有该属性

1、问题

用JSON.toJSONString转JSON时,当属性值为null的话,转出来的JSON里没有了值为null的属性,属性丢失了

2、原因

用fastjson将java对象转json字符串时会默认去除空字段

2、解决办法

在JSON.toJSONString方法加上SerializerFeature这一参数,设置为字段null时输出默认值而不是null

java 复制代码
SerializerFeature.WriteNullListAsEmpty    //如果List类型的字段的值为null,输出为[]
SerializerFeature.WriteNullStringAsEmpty  //如果String类型的字段的值为null,输出为"" 
SerializerFeature.WriteNullNumberAsZero   //如果数值类型的字段的值为null,输出为0,
SerializerFeature.WriteNullBooleanAsFalse //如果Boolean类型的字段的值如果为null,输出为false
java 复制代码
SerializerFeatures[] serializerFeatures = {SerializerFeature.WriteNullListAsEmpty, SerializerFeature.WriteNullStringAsEmpty, SerializerFeature.WriteNullNumberAsZero, SerializerFeature.WriteNullBooleanAsFalse};
JSON.toJSONString(需要转成JSON的Java对象, serializerFeatures);
相关推荐
colicode5 小时前
安卓Android语音验证码接口API示例代码:Kotlin/Java版App验证开发
android·java·前端·前端框架·kotlin·语音识别
Java后端的Ai之路5 小时前
【 Java】-网络协议核心知识问答(比较全)
java·开发语言·网络协议
小道仙9711 小时前
jenkins对接、jenkins-rest
java·servlet·jenkins·jenkins-rest
莫寒清12 小时前
MinIO
java
Java后端的Ai之路14 小时前
【JDK】-JDK 21 新特性内容
java·开发语言·后端·jdk·jdk21
黎雁·泠崖16 小时前
Java常用类核心详解(七):正则表达式 Regex 从入门到实战
java·开发语言·正则表达式
sheji341616 小时前
【开题答辩全过程】以 婚纱影楼管理系统为例,包含答辩的问题和答案
java·eclipse
LuDvei16 小时前
LINUX文件操作函数
java·linux·算法
葵续浅笑17 小时前
从Spring拦截器到Filter过滤器:一次报文修改加解密的填坑经验
java·后端·spring