1. 情形1 JSONObject.toJSONString过滤掉null
ActivityDto da = new ActivityDto();
da.setUserId(1l);
da.setActivityName(null);
System.out.println(JSONObject.toJSONString(da));
//解决方式:
System.out.println(JSONObject.toJSONString(da, SerializerFeature.WriteMapNullValue));
2情形2 字符串转换JSONObject.parseObject
jsonObject.getString取值会过滤掉null
String reultTemp = "{\"message\":\"成功\",\"result\":{\"artNum\":0,\"boyScoutsDepartureDate\":null},\"returncode\":0}";
JSONObject jsonObject = JSONObject.parseObject(reultTemp);
if (jsonObject.getInteger("returncode").equals(0)){
log.info(jsonObject.getString("result"));
}
分析:JSONObject.parseObject 这里其实不过滤null
String reultTemp = "{\"message\":\"成功\",\"result\":{\"artNum\":0,\"boyScoutsDepartureDate\":null},\"returncode\":0}";
JSONObject jsonObject = JSONObject.parseObject(reultTemp);
if (jsonObject.getInteger("returncode").equals(0)){
JSONObject result = jsonObject.getJSONObject("result");
log.info(JSONObject.toJSONString(result, SerializerFeature.WriteMapNullValue));
}