用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);
相关推荐
丁一郎学编程7 分钟前
测试开发面经
java·开发语言
a程序小傲12 分钟前
京东Java面试被问:RPC调用的熔断降级和自适应限流
java·开发语言·算法·面试·职场和发展·rpc·边缘计算
独自破碎E14 分钟前
MyBatis Flex和MyBatis Plus的区别
java·开发语言·mybatis
葡萄成熟时 !33 分钟前
正则表达式
java·正则表达式
无心水34 分钟前
微服务架构下Dubbo线程池选择与配置指南:提升系统性能与稳定性
java·开发语言·微服务·云原生·架构·java-ee·dubbo
Chan1636 分钟前
《Java并发编程的艺术》| 并发关键字与 JMM 核心规则
java·开发语言·数据库·spring boot·java-ee·intellij-idea·juc
期待のcode1 小时前
线程睡眠sleep方法
java·开发语言
汤姆yu1 小时前
基于springboot的植物花卉销售管理系统
java·spring boot·后端
不想写bug呀1 小时前
RabbitMQ相关问题(1)
java·rabbitmq
海南java第二人1 小时前
Spring Boot Starters深度解析:简化依赖管理的核心利器
java·spring boot·后端