用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);
相关推荐
生命因何探索几秒前
SpringBoot启动流程—面试热点
java·spring boot·面试
xiaoye37083 分钟前
如何在Spring中使用注解解决线程并发问题?
java·后端·spring
future02104 分钟前
Spring IOC启动全流程解密
java·后端·spring·ioc
太阳神LoveU5 分钟前
Spring Boot 4.0.3和3.X的各个版本主要功能差别和优劣势对比
java·spring boot·后端
俩娃妈教编程6 分钟前
C++基础知识点:位运算
java·开发语言·jvm·c++·位运算
夫唯不争,故无尤也15 分钟前
原始文档元数据metadata
java·前端·javascript·sql
wefly201716 分钟前
无需安装的 M3U8 在线播放器,快速实现 HLS 流预览与调试
java·开发语言·python·开发工具
xuansec25 分钟前
【JavaEE安全】Java第三方组件安全漏洞(Log4J JNDI/FastJson 反射)
java·安全·java-ee
vx+_bysj686925 分钟前
【免费领源码】基于springboot欣欣汽车租赁系统 计算机毕业设计项目推荐上万套实战教程JAVA,node.js,C++、python、大屏数据可视化
java·spring boot·mysql·汽车
榴月子28 分钟前
Mac 安装 Homebrew、 Java 和 Kotlin
java·macos·kotlin