给JSON中put的value=null时,这对key=value会被隐藏掉

1.当我们在JSON里像这样json.put("key",null);put值进去的话,这个键值对就会被隐藏掉例如下面的例子:

<pre name="code" class="html">    Map < String , Object > jsonMap = new HashMap< String , Object>();
        jsonMap.put("a",1);
        jsonMap.put("b",null);
        String str = JSONObject.toJSONString(jsonMap);
        System.out.println(str);
控制台输出的是:{"a":1}

2.或者当你要传值时,存进去一个get到的值,但是没有判断,这个值为null时,很容易被忽略,此时的键值对就会消失,导致调用接口失败。

解决方案:
SerializerFeature.WriteMapNullValue

String str = JSONObject.toJSONString(jsonMap,SerializerFeature.WriteMapNullValue);
 

猜你喜欢

转载自blog.csdn.net/qq_23337175/article/details/82107171