当前位置: 首页 > news >正文

Gson 添加数据默认值问题记录

问题:在用Gson add(key(string类型),value(必须是JsonElement子类))时发现,value 传了 "" 空字符串(非null),默认解析后返回null? 虽说影响不大、但是给后端传数据时、如果后端没有进行null处理 就会抛异常(而且后端懒得睬你、人家就是不愿意改...)0.0!! 


1、问题代码示例:

 val json = JsonObject()//JsonParser.parseString("") 会被解析成 nulljson.add("key", JsonParser.parseString(""))

是的就是JsonParser.parseString("")的问题;

解决办法:

 val json = JsonObject()//JsonPrimitive("") 就会被解析成 ""json.add("key", JsonPrimitive(""))

这里你可以根据条件、选择使用JSonPrimitive() 或者 JsonParseString("")

比如:if(xxx is String && xxx == "") JsonPrimitive("") else JsonParseString("");


2、JsonPrimitive 简单介绍:

JsonPrimitive 就是你传什么类型、就给你返回什么类型、很简单看下源码就行,基本数据类型都支持;

希望能帮到遇到此问题的倒霉蛋;

http://www.lryc.cn/news/113501.html

相关文章:

  • 利用Arthas+APM监控进行Java性能深度定位
  • 【BASH】回顾与知识点梳理(十一)
  • vue2-diff算法
  • SpringBoot使用redis作为缓存的实例
  • vue3使用vue3-seamless-scroll插件
  • QT开发学习相关笔记
  • 拆分PDBQT文件并将其转换为PDB格式
  • Reinforcement Learning with Code 【Code 4. DQN】
  • Python3 高级教程 | Python3 正则表达式(一)
  • 奥威BI系统:零编程建模、开发报表,提升决策速度
  • 海康威视摄像头二次开发_云台控制_视频画面实时预览(基于Qt实现)
  • 单片机外部晶振故障后自动切换内部晶振——以STM32为例
  • Matlab实现决策树算法(附上多个完整仿真源码)
  • java中异步socket类的实现和源代码
  • ElasticSearch7.6入门学习笔记
  • 《面试1v1》ElasticSearch架构设计
  • tomcat和nginx的日志记录请求时间
  • 数据结构——红黑树基础(博文笔记)
  • 盘点帮助中心系统可以帮到我们什么呢?
  • Web3 solidity编写交易所合约 编写ETH和自定义代币存入逻辑 并带着大家手动测试
  • 概念解析 | 生成式与判别式模型在低级图像恢复与点云重建中的角力:一场较量与可能性探索
  • 【云原生】kubectl命令的详解
  • uniapp两个单页面之间进行传参
  • uniapp运行项目到iOS基座
  • HTTP——九、基于HTTP的功能追加协议
  • Redis 在电商秒杀场景中的应用
  • 大麦订单生成器 大麦一键生成订单
  • Java实现Google cloud storage 文件上传,Google oss
  • 适配器模式(AdapterPattern)
  • Apache Kafka Learning