Commit e8cd979bd4195d1e9fd43bcafd20a169bf1dd8b5
1 parent
cb385326
Exists in
master
1.完善jsonutil方法
Showing
2 changed files
with
39 additions
and
1 deletions
Show diff stats
build.gradle
| @@ -59,7 +59,7 @@ uploadArchives { | @@ -59,7 +59,7 @@ uploadArchives { | ||
| 59 | authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD) | 59 | authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD) |
| 60 | } | 60 | } |
| 61 | pom.project { | 61 | pom.project { |
| 62 | - version '1.1.39' | 62 | + version '1.1.40' |
| 63 | artifactId ARTIFACT_Id | 63 | artifactId ARTIFACT_Id |
| 64 | groupId GROUP_ID | 64 | groupId GROUP_ID |
| 65 | packaging TYPE | 65 | packaging TYPE |
src/main/java/com/taover/util/UtilJSON.java
| @@ -57,6 +57,44 @@ public class UtilJSON { | @@ -57,6 +57,44 @@ public class UtilJSON { | ||
| 57 | } | 57 | } |
| 58 | } | 58 | } |
| 59 | 59 | ||
| 60 | + public static void replaceJsonNull(JSONObject data, Object target){ | ||
| 61 | + if(data == null || data.isNullObject()){ | ||
| 62 | + return; | ||
| 63 | + } | ||
| 64 | + Iterator<String> keyIter = data.keys(); | ||
| 65 | + while(keyIter.hasNext()){ | ||
| 66 | + String keyItem = keyIter.next(); | ||
| 67 | + Object value = data.get(keyItem); | ||
| 68 | + | ||
| 69 | + if(isJsonNull(value)) { | ||
| 70 | + data.put(keyItem, target); | ||
| 71 | + } | ||
| 72 | + | ||
| 73 | + if(value instanceof JSONObject){ | ||
| 74 | + replaceJsonNull((JSONObject)value, target); | ||
| 75 | + continue; | ||
| 76 | + } | ||
| 77 | + | ||
| 78 | + if(value instanceof JSONArray){ | ||
| 79 | + replaceJsonNull((JSONArray)value, target); | ||
| 80 | + } | ||
| 81 | + } | ||
| 82 | + } | ||
| 83 | + | ||
| 84 | + public static void replaceJsonNull(JSONArray dataArr, Object target){ | ||
| 85 | + if(dataArr == null){ | ||
| 86 | + return; | ||
| 87 | + } | ||
| 88 | + for(int i=0; i<dataArr.size(); ++i){ | ||
| 89 | + JSONObject dataItem = dataArr.optJSONObject(i); | ||
| 90 | + if(dataItem.isNullObject()){ | ||
| 91 | + dataArr.set(i, target); | ||
| 92 | + continue; | ||
| 93 | + } | ||
| 94 | + removeJsonNull(dataItem); | ||
| 95 | + } | ||
| 96 | + } | ||
| 97 | + | ||
| 60 | public static void main(String[] args){ | 98 | public static void main(String[] args){ |
| 61 | JSONObject data = JSONObject.fromObject("{\"message\":\"文字解析成功\",\"status\":true,\"statusCode\":\"null\",\"result\":{\"items\":[{\"district\":\"隆化县\",\"city\":\"承德市\",\"province\":\"河北省\",\"phone\":\"13621051230\",\"name\":{\"first_name\":\"wang\",\"second_name\":\"bin\",\"full_name\":null},\"address\":\"东阿超村\"}]}}"); | 99 | JSONObject data = JSONObject.fromObject("{\"message\":\"文字解析成功\",\"status\":true,\"statusCode\":\"null\",\"result\":{\"items\":[{\"district\":\"隆化县\",\"city\":\"承德市\",\"province\":\"河北省\",\"phone\":\"13621051230\",\"name\":{\"first_name\":\"wang\",\"second_name\":\"bin\",\"full_name\":null},\"address\":\"东阿超村\"}]}}"); |
| 62 | removeJsonNull(data); | 100 | removeJsonNull(data); |