在项目中遇到一问题,json序列化需要将null传递给前端,但之前项目中使用的都是fastjson的JSONObject.toJSONString(vo),这样会过滤掉为NULL的属性。

解决办法:

1、依然使用fastjson,使用SerializerFeature.WriteMapNullValue参数,不过滤null,null也会传递给前端

String s = JSONObject.toJSONString(vo,SerializerFeature.WriteMapNullValue);

2、使用jsckson转json

ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.ALWAYS);
String s =mapper.writeValueAsString(vo);

//Include.ALWAYS 默认,不会过滤null
//Include.NON_NULL 属性为NULL将不参与序列化
//Include.NON_DEFAULT 属性为默认值不参与序列化
//Include.NON_EMPTY 属性为“” 或 NULL都不参与序列化

注意:(1)、会根据设置的参数进行序列化

   (2)、可以在实体上面加 @JsonInclude(Include.NON_NULL) 表示未NULL不参加序列化
        在属性上面加@JsonInclude(Include.NON_NULL) 表示该属性为NULL则不参与序列化

json序列化NULL的更多相关文章

  1. java对象json序列化时忽略值为null的属性

    环境: jdk: openjdk11 操作系统: windows 10教育版1903 目的: 如题,当一个对象里有些属性值为null 的不想参与json序列化时,可以添加如下注解 import com ...

  2. C#里XML(JSON)序列化时,自动隐藏值为Null的成员的输出

    从StackOverflow里找到的答案.发现对最新的Newtownsoft的JSON序列化也同样适用. https://stackoverflow.com/questions/5818513/xml ...

  3. .Net深入实战系列—JSON序列化那点事儿

    序 当前主流的序列化JSON字符串主要有两种方式:JavaScriptSerializer及Json.net(Nuget标识:Newtonsoft.Json).JavaScriptSerializer ...

  4. [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类

    [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能 ...

  5. DotNet的JSON序列化与反序列化

    JSON(JavaScript Object Notation)JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式.在现在的通信中,较多的采用JSON数据格式,JSON有 ...

  6. 使用JSON.Net(Newtonsoft.Json)作为ASP.Net MVC的json序列化和反序列化工具

    ASP.Net MVC默认的JSON序列化使用的是微软自己的JavaScriptSerializer.性能低不说,最让人受不了的是Dictionary<,>和Hashtable类型居然对应 ...

  7. Windows Phone 六、JSON序列化

    JSON序列化 public class Person { public int Id { get; set; } public string Name { get; set; } public in ...

  8. NetworkComms V3 使用Json序列化器进行网络通信

    刚才在网上闲逛,偶然看到一篇文章 C#(服务器)与Java(客户端)通过Socket传递对象 网址是:http://www.cnblogs.com/iyangyuan/archive/2012/12/ ...

  9. Newtonsoft.Json 序列化和反序列化 时间格式

    From : http://www.cnblogs.com/litian/p/3870975.html 1.JSON序列化 string JsonStr= JsonConvert.SerializeO ...

随机推荐

  1. SWUST OJ(599)

    拉丁方阵 #include <iostream> #include <cstdlib> using namespace std; int main() { int n; cin ...

  2. python 中的 yield 究竟为何物?生成器和迭代器的区别?

    当你突然看到别人的代码中出现了一个好像见过但又没用过的关键词 比如 yield ,你是否会觉得这段代码真是高大上呢? 或许只有我这种小白才会这样子觉得,就在刚刚,我就看见了别人的代码中的yield,觉 ...

  3. 记一次简单的sql注入

     什么是sql注入攻击?  所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令.在某些表单中,用户输入的内容直接用来构造(或者影 ...

  4. weblogic安装部署ODM下jrules-res-xu-WL10.rar出现Can't find com.ibm.rules.res.xu.messages bundle异常

    Windows: weblogic用户新建域文件夹里面,bin目录下找到setDomainEnv.cmd文件 在set JAVA_OPTIONS=%JAVA_OPTIONS% 后面添加: " ...

  5. form 表单提交、后台的统一处理

    配合 form 提交后台 /ajaxSubmit/Submit等通过form提交springMvc下@RequestMapping("/save_oaflow_init")//Re ...

  6. jQuery的版本兼容问题

    之前在做头像上传的时候,使用的jQuery是1.8.2的版本,然后头像上传做完后,发现项目用的jQuery版本是3.3.1的.由于两个版本的差距太大了.所以兼容很差. 3.3.1不支持剪切头像的某些函 ...

  7. ES5 & ES6 基础

    一.什么是ES5 附上一览表 (5.1中文 (2011.6)): http://lzw.me/pages/ecmascript/ (5.1英文PDF):http://www.ecma-internat ...

  8. win10释放的wifi热点手机连不上

    直入正题吧…… 在win10的搜索框里输入ser,找到“windows服务”选项,点击进入,如下图 找到下图所示的两个服务,然后,右键,属性,启动类型改为自动,然后点确定,确定完以后,再右键,点启动, ...

  9. SQL基本介绍

    SQL学习资料来源:http://www.w3school.com.cn/sql/index.asp SQL 是用于访问和处理数据库的标准的计算机语言. 什么是 SQL?SQL 指结构化查询语言SQL ...

  10. elk的一些零碎知识

    1.elasticsearch检查是否健康 http://12.20.511.141:9200/_cat/health?v 绿色表示一切正常, 黄色表示所有的数据可用但是部分副本还没有分配,红色表示部 ...