用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);
相关推荐
金牌归来发现妻女流落街头13 小时前
日志级别是摆设吗?
java·spring boot·日志
MOONICK13 小时前
C#基础入门
java·开发语言
程序员小假13 小时前
我们来说一下虚拟内存的概念、作用及实现原理
java·后端
悠哉清闲14 小时前
Future
java·开发语言·kotlin
徐同保14 小时前
python如何手动抛出异常
java·前端·python
极客先躯15 小时前
高级java每日一道面试题-2025年7月02日-基础篇[LangChain4j]-什么是 AiServices?它是如何简化 LLM 应用开发的?
java·开发语言
摇滚侠15 小时前
JWT 是 token 的一种格式,我的理解对吗?
java·人工智能·intellij-idea·spring ai·springaialibaba
yuuki23323316 小时前
【C++】模拟实现 AVL树
java·c++·算法
牛马baby16 小时前
多态和重载的底层实现原理
java
CircleMouse16 小时前
springboot项目中使用Java 8的日期时间API
java·开发语言·spring boot·后端·spring