用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);
相关推荐
身如柳絮随风扬21 分钟前
Java 项目打包与部署完全指南:JAR vs WAR,从构建到运行
java·firefox·jar
云烟成雨TD34 分钟前
Spring AI Alibaba 1.x 系列【62】时光旅行(Time-Travel)
java·人工智能·spring
浩少7021 小时前
【无标题】
java·开发语言
一棵白菜1 小时前
java 学习
java
卷毛的技术笔记1 小时前
Java后端硬核实战:用Spring AI Alibaba+Redis给LLM装上“超强记忆中枢”
java·人工智能·redis·后端·spring·ai·系统架构
AKA__Zas3 小时前
初识多线程(3.0)
java·开发语言·学习方法
北漂人Java3 小时前
SpringAI-2.Spring AI整合本地模型和云端大模型
java·spring
迹象Kimizhou_blog3 小时前
国内 IntelliJ IDEA 集成Claude code,调用deepSeek模型实现agent
java·ide·intellij-idea·deepseek·claude code
百珏3 小时前
海量人群包存储优化:基于 RoaringBitmap 交换格式与 Redis 分片 Bitmap 的实践
java·后端·架构
风味蘑菇干3 小时前
IO流(字节流)
java