用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);
相关推荐
Dicky-_-zhang2 小时前
消息队列Kafka/RocketMQ选型与高可用架构:从单体到100万TPS的演进
java·jvm
晨曦中的暮雨2 小时前
4.15腾讯 CSIG云服务产线 一面
java·开发语言
fake_ss1982 小时前
AI时代学习全栈项目开发的新范式
java·人工智能·学习·架构·个人开发·学习方法
茉莉玫瑰花茶2 小时前
工作流的常见模式 [ 1 ]
java·服务器·前端
未若君雅裁3 小时前
Spring AOP、日志切面与声明式事务原理
java·后端·spring
No8g攻城狮3 小时前
【人大金仓】wsl2+ubuntu22.04安装人大金仓数据库V9
java·数据库·spring boot·非关系型数据库
xiaoerbuyu12333 小时前
开源Java 邮箱 基于SpringBoot+Vue前后端分离的电子邮件
java·开发语言
C+++Python4 小时前
C++ 进阶学习完整指南
java·c++·学习
zhangjw344 小时前
第11篇:Java Map集合详解,HashMap底层原理、哈希冲突、JDK1.8优化、遍历方式彻底吃透
java·开发语言·哈希算法