今天在返回数据给前端时发现个别字段丢失,追踪发现是null值所致,如下:
//由于treeNodes中存在个别字段为null,此时若是直接JSONObject.toJSONString(treeNodes)返回前端,是接收不到这个值为null的字段的。
Set<TreeNode> treeNodes = parseToObjectTail(resList);
AJAXUtil.success(response, JSONObject.toJSONString(treeNodes));
//需要设置SerializerFeature.WriteMapNullValue将null值输出,修改代码如下:
AJAXUtil.success(response, JSONObject.toJSONString(treeNodes, SerializerFeature.WriteMapNullValue));
一同了解一下fastjson的SerializerFeature属性设置
https://gitcode.net/mirrors/alibaba/fastjson?utm_source=csdn_github_accelerator
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>2.0.23</version>
</dependency>
SerializerFeature属性介绍
测试案例可以查看这里
https://developer.aliyun.com/article/1166863