fastjson生成json时Null属性不显示的解决方法
作者:jingxian 发布时间:2022-08-17 15:56:59
标签:fastjson,null,不显示,json
举个例子
Map < String , Object > jsonMap = new HashMap< String , Object>();
jsonMap.put("a",1);
jsonMap.put("b","");
jsonMap.put("c",null);
jsonMap.put("d","wuzhuti.cn");
String str = JSONObject.toJSONString(jsonMap);
System.out.println(str);
//输出结果:{"a":1,"b":"",d:"wuzhuti.cn"}
从输出结果可以看出,null对应的key已经被过滤掉;这明显不是我们想要的结果,这时我们就需要用到fastjson的SerializerFeature序列化属性
也就是这个方法:JSONObject.toJSONString(Object object, SerializerFeature... features)
Fastjson的SerializerFeature序列化属性
QuoteFieldNames———-输出key时是否使用双引号,默认为true
WriteMapNullValue——–是否输出值为null的字段,默认为false
WriteNullNumberAsZero—-数值字段如果为null,输出为0,而非null
WriteNullListAsEmpty—–List字段如果为null,输出为[],而非null
WriteNullStringAsEmpty—字符类型字段如果为null,输出为”“,而非null
WriteNullBooleanAsFalse–Boolean字段如果为null,输出为false,而非null
代码
Map < String , Object > jsonMap = new HashMap< String , Object>();
jsonMap.put("a",1);
jsonMap.put("b","");
jsonMap.put("c",null);
jsonMap.put("d","wuzhuti.cn");
String str = JSONObject.toJSONString(jsonMap,SerializerFeature.WriteMapNullValue);
System.out.println(str);
//输出结果:{"a":1,"b":"","c":null,"d":"wuzhuti.cn"}


猜你喜欢
- 一.认识IO1.IO的分类(1)BIO:同步阻塞IO(2)NIO:同步非阻塞IO(3)AIO:异步阻塞IO注意: 这里主要介绍BIO2.IO
- Vector实现了AbstractList抽象类和List接口,和ArrayList一样是基于Array存储的Vector 是线程安全的,在
- 如今,互联网项目对于安全的要求越来越严格,这就是对后端开发提出了更多的要求,目前比较成熟的几种大家比较熟悉的模式,像RBAC 基于角色权限的
- 引导要求:线程资源必须通过线程池提供,不允许在应用自行显式创建线程;说明:使用线程池的好处是减少在创建和销毁线程上所花的时间以及系统资源的开
- 本文实例讲述了C#实现查杀本地与远程进程的方法。分享给大家供大家参考。具体实现方法如下:using System;using System.
- public static string encode(string str) { &
- 冒泡排序算法演示图:public static void bubbleSort(int[] array) { &
- 两张表SystemParam(系统参数表) Suit (主题)SystemParam 与 Suit 是多对一Suit 的higerSuit字
- 先决条件先运行mongodb肯定是必须的,然后导入以下包:import com.mongodb.MongoClient;import com
- 新建一个类继承AbstractFunction,重写以下方法:executesetParametersgetReferenceKeygetA
- 基于 springboot+vue 的测试平台(练手项目)开发继续更新。接下来准备开发请求断言功能。关于这个功能要实现哪些需求,长什么样子,
- 本文实例讲述了java实现新浪微博Oauth接口发送图片和文字的方法。分享给大家供大家参考。具体如下:基于网上很多人利用新浪api开发新浪微
- 项目分为前台和后台,前台主要为学生角色、后台主要为管理员角色。管理员添加试题和发布试卷,学生负责在线考试、在线查看成绩和错题记录列表等。管理
- 前言最近被问到了这个问题,第一次回答的也是很不好,在此参考网上答案进行整理记录。供大家学习参考。Synchronized修饰非静态方法Syn
- 在用C#开发Web应用时有个痛点,就是本机用VS开启Web应用调试时外部机器无法访问此Web应用。这里将会介绍如何通过设置允许局域网和外网机
- 一、settings.xml文件会在两个目录下存在:1、Maven安装目录(全局):%MAVEN_HOME%\conf\settings.x
- 前言大家都知道,equals和hashcode是java.lang.Object类的两个重要的方法,在实际应用中常常需要重写这两个方法,但至
- 该篇文章篇幅很长,大概的思路如下 maven的介绍,初步
- 发布:一个对象是使它能够被当前范围之外的代码所引用:常见形式:将对象的的引用存储到公共静态域;非私有方法中返回引用;发布内部类实例,包含引用
- 平时开发中经常遇到的很小的问题,这里记录一下。一般在AndroidManifest.xml中添加了android:windowSoftInp