海露-XShell.CN

maven中的依赖
1
2
3
4
5
6
<!-- 阿里fastjson包JSON转换-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>

工具类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/**
* @author hailou
* @Description JSON删除key或者value中的空值
* @Date on 2020/9/18 11:09
*/
import java.util.Iterator;
import java.util.Set;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class JsonDealUtils {
public static JSONObject getNoNullValue(String json) {
JSONObject objTem=JSON.parseObject(json);
JSONObject objRel=JSON.parseObject(json);
return deal(objTem,objRel);
}
private static JSONObject deal(JSONObject objTem,JSONObject objRel) {
Set<String> keySet = objTem.keySet();
Iterator<String> iterator = keySet.iterator();
while(iterator.hasNext()) {
String temp = iterator.next();//存key
Object objR = objTem.get(temp);//存value
if(temp==null||"".equals(temp)||"null".equals(temp)) {
objRel.remove(temp);
continue;
}
if(objR==null||"".equals(objR.toString())||"null".equals(objR.toString())||"[]".equals(objR.toString())||"{}".equals(objR.toString())) {
objRel.remove(temp);
continue;
}
if(objR instanceof JSONObject) {
JSONObject j=(JSONObject)objR;
JSONObject object2 = (JSONObject)objRel.get(temp);
deal(j,object2);
continue;
}
if(objR instanceof JSONArray) {
JSONArray jsonArray = objTem.getJSONArray(temp);
JSONArray jsonArray2 = objRel.getJSONArray(temp);
for(int i=0;i<jsonArray.size();i++) {
deal(jsonArray.getJSONObject(i),jsonArray2.getJSONObject(i));
}
}
}
return objRel;
}
}

如果对您有帮助,请作者喝杯LK:

 评论


博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议

本站使用 Material X 作为主题 , 总访问量为 次 。
字数统计:17.9k 载入天数...载入时分秒...