JSON.toJSONString()空字段不忽略修改的问题

目录
  • JSON.toJSONString()空字段不忽略修改
  • JSON.toJSONString()丢失/少字段
    • 问题描述
    • 原因

JSON.toJSONString()空字段不忽略修改

使用JSON.toJSONString(object)方法,返回的json中,默认会将为空的字段自动忽略。

public static void main(String[] args) {
    DossierApply dossierApply = new DossierApply();
    String s = JSON.toJSONString(dossierApply, valueFilter);
    System.out.println(s);
} 
private static ValueFilter valueFilter = (o, s, o1) -> o1 == null ? "" : o1;

加上这个过滤器后,所有的null和""串都会被转换成""值输出到字符串中。

JSON.toJSONString()丢失/少字段

问题描述

使用JSON.toJSONString() 方法转对象为JSON格式,然而结果却不见了一个字段。

原因

JSON 这个方法没有识别setter,getter方法

我的字段为“uId"

因为我的实体是由generator mybatis自动生成的,生成的setter,getter如下:

    public Long getuId() {
        return uId;
    } 
    public void setuId(Long uId) {
        this.uId = uId;
    }

再另添加一套setter,getter,不是修改,不是修改,不是修改,重说三:

    public void setUId(Long uId) {
        this.uId = uId;
    } 
    public Integer getDtId() {
        return dtId;
    }

好使了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 使用JSON.toJSONString()返回{}的原因

    目录 JSON.toJSONString()返回{}原因 测试代码 原因 JSON.toJSONString的坑有些字段没有了 1.问题 2.解决方式 3.原因 JSON.toJSONString()返回{}原因 测试代码 public static void main(String[] args) {undefined ResultModel resultModel = ResultModel.error("110","error"); System.out.pr

  • JSONObject toJSONString错误的解决

    目录 JSONObject toJSONString错误 1.com.alibaba.fastjson.JSONObject 继承了JSON 2.在使用时需要注意的地方 3.默认过滤掉值为null的key JSONUtils.toJSONString的一个坑 不需要判断使用StringUtils.isBlank进行判断 JSONObject toJSONString错误 1.com.alibaba.fastjson.JSONObject 继承了JSON 可以使用其2个重要的方法: Model m

  • 解决JSON.toJSONString首字母大小写的问题

    目录 JSON.toJSONString首字母大小写 问题场景 如何解决 JSONObject.toJSONString把属性的大小写改变了 JSON.toJSONString首字母大小写 问题场景 最近在做医院项目,医院方面his部分的入参出参由mirth去封装了,写了一版接口文档给了我. 我一看就有点闹心,首字母全是大写.和我上一家待过的项目里的类名字段名全是大写的闹心程度差不多… 因为我需要用http请求去调他的接口,传参只能用String,所以需要用到JSON工具去转成String. 但

  • JSON.parseObject和JSON.toJSONString实例详解

    JSON.parseObject,是将Json字符串转化为相应的对象:JSON.toJSONString则是将对象转化为Json字符串.在前后台的传输过程中,Json字符串是相当常用的,这里就不多介绍其功能了,直接举一下应用的小例子,帮助理解这两个方法的用法. 首先用maven引入fastjson <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apa

  • 解决JSONObject.toJSONString()输出null的问题

    目录 JSONObject.toJSONString()输出null 代码 输出 看下SerializerFeature属性 不要盲目的使用JSONObject.toJSONString JSONObject.toJSONString()输出null 问题:fastjson的api种,jsonObject.toJsonString(),当值为null时,没打印出来 代码 JSONObject jsonObject = new JSONObject(); jsonObject.put("id&qu

  • JSON.toJSONString()空字段不忽略修改的问题

    目录 JSON.toJSONString()空字段不忽略修改 JSON.toJSONString()丢失/少字段 问题描述 原因 JSON.toJSONString()空字段不忽略修改 使用JSON.toJSONString(object)方法,返回的json中,默认会将为空的字段自动忽略. public static void main(String[] args) {     DossierApply dossierApply = new DossierApply();     String

  • spring boot 下对JSON返回值去除null和空字段操作

    在开发过程中,我们需要统一返回前端json格式的数据,但有些接口的返回值存在 null或者""这种没有意义的字段. 不仅影响理解,还浪费带宽,这时我们可以统一做一下处理,不返回空字段,或者把NULL转成"",spring 内置的json处理框架是Jackson.我们可以对它配置一下达到目的 直接看代码,很简单. /** * 〈返回json空值去掉null和""〉 〈功能详细描述〉 * * @author gogym * @version 2017

  • Java开发中POJO和JSON互转时如何忽略隐藏字段的问题

    1. 前言 在Java开发中有时候某些敏感信息我们需要屏蔽掉,不能被消费这些数据的客户端知道.通常情况下我们会将其设置为null或者空字符 "",其实还有其它办法,如果你使用了Jackson的话.接下来我将以一个实际场景来告诉你可以怎么做. 2. Jackson如何忽略字段 这里都以JSON序列化为例.假如我们在业务中需要返回用户信息,已有的POJO是这样的: import lombok.Data; /** * @author felord.cn */ @Data public cla

  • 使用JSON.toJSONString格式化成json字符串时保留null属性

    目录 JSON.toJSONString格式化成json字符串时保留null属性 属性说明 例子 处理返回结果中字段为空或为null,不展示字段的问题(字段展示不全) JSON.toJSONString格式化成json字符串时保留null属性 使用阿里的 com.alibaba.fastjson.JSON 格式化时,默认null属性会被过滤掉,可以设置不过滤null public static String parseScriptJsonStringWithNullValue(Object ob

  • C#实体对象序列化成Json并让字段的首字母小写的两种解决方法

    引言:最近在工作中遇到与某些API对接的post的数据需要将对象的字段首字母小写. 解决办法有两种: 第一种:使用对象的字段属性设置JsonProperty来实现(不推荐,因为需要手动的修改每个字段的属性) public class UserInfo { [JsonProperty("id")] public int Id{ set; get; } [JsonProperty("userName")] public string UserName{ set; get

  • json数据处理技巧(字段带空格、增加字段、排序等等)

    1.json数据的正常取值:json[i].fieldName 2.json数据的字段带空格:eval('json[' + i + ']["' + field + '"]') 3.json数据的赋值:eval('json[' + i + ']["' + field + '"]=' + jsonFilter.length); 4.json数据增加字段:循环所有数据,直接json[i].newField=defaultValue就可以了 5.json数据的排序:相当于数

  • 动态给表添加删除字段并同时修改它的插入更新存储过程

    有一个表,用户需要在后台操作它,希望能对它动态进行添加删除字段.这个功能也许没有问题,但是它原有插入与更新的两个存储过程,也需要一起修改.因此Insus.NET实现了它,因此此文会让你了解到怎样动态为一个表添加删除字段以及动态修改它的存储过程 首先需要建一个表[A],这个表只有两个字段,一个是[ID]自动增长,另一个是表[B]的字段名,存储的每一笔记录,即是用户需要操作的表[B]的字段.这个表[A]需要建添加,更新,以及删除的存储过程,方便用户在后台方便操作,还有重点部分,需要写触发器.如有记录

  • MySQL查询空字段或非空字段(is null和not null)

    现在我们先来把test表中的一条记录的birth字段设置为空. mysql> update test set t_birth=null where t_id=1; Query OK, 1 row affected (0.02 sec) Rows matched: 1  Changed: 1  Warnings: 0 OK,执行成功! 设置一个字段值为空时的语法为:set <字段名>=NULL 说明一下,这里没有大小写的区分,可以是null,也可以是NULL. 下面看看结果: mysql&

随机推荐