今天遇到一个接受json转换字符串后丢失BigDecimal类型值为null或者”“的数据,查看一下原因发现JSON会过滤掉值为null的数据。
尝试几种json转换字符串方法后发现无论哪种方法都不能避免这个问题
- JSONObject.toJSONString()
- JSON.toJSONString()
- gson.toJson()
最后找到一个方法添加SerializerFeature.WriteMapNullValue后可以保留value为null的数据JSONObject.toJSONString(object,SerializerFeature.WriteMapNullValue)
方法详解