java json不生成null或者空字符串属性

时间:2022-03-19 10:25:46
大家平时用java对象转json字符串。null或者空字符串属性是不需要生成到json字符串里面的。 如下方式生成,没有使用的属性也会生成json字符串属性。 JSONArray jsonarray = JSONArray.fromObject(ecmMessageMap.values());msgObj = jsonarray.toString();
{"actionType":"","clientIp":"","ecServiceNumber":"","ecmMessageEventFlow":null,"endTime":"","eventId":"","faultEventFlowList":[],"groupId":"","psize":0,"receiver":"","receiverEcServiceNumber":"","sender":"","startTime":"","successEventIds":[]}
Gson使用:
Gson g = new Gson();msgObj = g.toJson(ecmMessage);

{"actionType":"1","successEventIds":[],"faultEventFlowList":[]}
如果大数据传输,或者存储到数据库,合理生成json字符串,会节约很大一部分存储空间和传输速度。比如交换监控mq数据json格式,交换监控容灾数据库存储。