RestTemplate传输值为null的属性、利用FastJson将属性中有空值null的对象转化成Json字符串

一个pojo类:

import lombok.Data;

@Data
public class Friend {
    private String name;
    private int age;
    private String sex;
}

初始化一个Friend对象,该对象属性为"sex"对应的值设置为null:

public class FriendTest {
    private Friend friend = new Friend();

    @Before
    public void init(){
        friend.setAge(26);
        friend.setName("xiaofang");
        friend.setSex(null);
    }

使用FastJson将该对象转化为Json字符串:

@Test
    public void testObjectToJson(){
        String jsonString = JSONObject.toJSONString(friend);
        System.out.println(jsonString);
    }

可以看到,"sex"字段由于为null,转化时该字段没了。

设置序列化类型

@Test
    public void testJsonSerializer(){
        String jsonString = JSONObject.toJSONString(friend, SerializerFeature.WriteMapNullValue);
        System.out.println(jsonString);
    }

就有值为null的属性了。

RestTemplate传输值为null的属性

使用RestTemplate传输该Friend对象时,值为null的属性会被忽略掉,但是我们在某些情况下需要传输值为null的属性,我们可以在该字段上加上com.fasterxml.jackson.annotation.@JsonInclude注解,通过RestTemplate传输,就不会忽略值为null的属性。

原文地址:https://www.cnblogs.com/theRhyme/p/10339071.html

时间: 2024-08-04 02:32:18

RestTemplate传输值为null的属性、利用FastJson将属性中有空值null的对象转化成Json字符串的相关文章

利用new Gson()的toJson方法将map对象转成json字符串

1 package mpsm.mcpsm.operation.demandInfoLoad.service; 2 3 import java.sql.ResultSet; 4 import java.text.DecimalFormat; 5 import java.util.ArrayList; 6 import java.util.HashMap; 7 import java.util.List; 8 9 import mpsm.mcpsm.operation.demandInfoLoad.

ObjC 利用反射和KVC实现嵌套对象序列化成JSON数据

原理: 0.创建一个新的可变字典:NSMutableDictionary 1.采用class_copyPropertyList函数遍历对象的属性 2.property_getName获取属性名,valueForKey获取属性内容. 3.判断该属性内容的Class: (1)假如为基础类型(NSString,NSNumber,NSNull),则直接返回,跳转到4操作. (2)假如为数组类型,先创建新的可变数组,再遍历旧数组中的内容,判断内容类型,重复3进行递归操作,直到找到基础类型.  通过setO

javascript中json对象json数组json字符串互转及取值

今天用到了json数组和json对象和json类型字符串之间互转及取值,记录一下: 1.json类型的字符串转换为json对象及取值 1 var jsonString = '{"bar":"property","baz":3}'; 2 var jsObject = JSON.parse(jsonString); //转换为json对象 3 alert(jsObject.bar); //取json中的值 2.json对象转为json类型的字符串 v

1、AJAX里面status的值代表什么 2、get post 的区别 3、怎样把对象转化成字符串 4、闭包、继承、原型、原型链 5 、http传输协议 6、arguments是什么

1.AJAX里面status的值代表什么     在JavaScript里面写AJax的时,最关键的一步是对XMLHttpRequest对象建立监听,即使用"onreadystatechange"方法.监听的时候,要对XMLHttpRequest对象的请求状态进行判断,通常是判断readyState的值为4且status的值为200或者304时执行我们需要的操作.以下记录了一些常用readState以及status的值及其含义 readyState 属性表示Ajax请求的当前状态.它的

java反射获取对象的属性值和对象属性中的子属性值

近段时间在做web项目,前端使用的是jQuery EasyUI. 为方便需要,准备做一个前端通用的Datagird导出Excel功能,博主也考虑过思路和最终功能,1.前端选中行导出:2.当前页导出:3.当前过滤条件导出. 想偷懒在网上找找已有的代码改改,发现大部分只能满足个别需求,使用JS导出只能满足前端,使用代码才能实现3功能. ...... 好了,说了一堆废话,回归正题,本文是在做通用自定义字段导出时所需要,根据属性名去查找对象和子对象,找到对应属性值,抓取回来放到Excel中. 直接上代码

练习-为网页添加icon图标;为网页添加关键字/作者;超链接;input的type属性有哪些常用属性值-form表单

  前  言 练习 学习HTML5有两个月了,每天都要学习新的知识,感觉以前学过的有点不熟悉了,复习巩固一下,发表一篇博客园. 本章复习的是HTML5中的基础语言/js的使用 1为网页添加icon图标 <link rel="icon" type="image/x-icon" href="img/logo.png"/> rel:用于标明被连接文件与当前文件的关系.此处选icon,表明被链接图片是当前网页的icon图标 type:表明被连

java中如何遍历实体类的属性和数据类型以及属性值

1 package com.walkerjava.test; 2 3 import java.lang.reflect.Field; 4 import java.lang.reflect.InvocationTargetException; 5 import java.lang.reflect.Method; 6 import java.util.Date; 7 8 /*** 9 * 遍历实体类的属性和数据类型以及属性值 10 * 11 * @author LiBaozhen 12 * @dat

前台jquery+ajax+json传值,后台处理完后返回json字符串,如何取里面的属性值?(不用springmvc注解)

一.取属性值 前台页面: function select(id){ alert("hfdfhdfh"+id); $.ajax({ url:"selectByid.jsp", datatype:'json', data:{id:id}, // 发送数据 error:function(data){ alert("出错了,没有这个学生!!"); }, success:function(data){ alert(data); var json = eva

java中循环遍历实体类的属性和数据类型以及属性值

package com.walkerjava.test; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Date; /*** * 遍历实体类的属性和数据类型以及属性值 * * @author LiBaozhen * @date 2013-1-4 上午10:25:02 * @co