jsonobject转map对象工具类
时间: 2023-08-29 15:13:58 浏览: 98
以下是将 JsonObject 转换为 Map 对象的 Java 工具类示例代码:
```
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.util.HashMap;
import java.util.Map;
public class JsonObjectToMapUtil {
public static Map<String, Object> convertJsonObjectToMap(JsonObject jsonObject) {
Map<String, Object> map = new HashMap<>();
for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
String key = entry.getKey();
JsonElement value = entry.getValue();
if (!value.isJsonPrimitive()) {
map.put(key, convertJsonObjectToMap(value.getAsJsonObject()));
} else {
map.put(key, value.getAsString());
}
}
return map;
}
public static void main(String[] args) {
String jsonString = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
JsonObject jsonObject = JsonParser.parseString(jsonString).getAsJsonObject();
Map<String, Object> map = convertJsonObjectToMap(jsonObject);
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String prettyJsonString = gson.toJson(map);
System.out.println(prettyJsonString);
}
}
```
本工具类使用了 Google 的 Gson 库,可以将 JsonObject 转换为 Map<String, Object> 对象。如果 JsonObject 中存在嵌套的 JsonObject,会递归转换为嵌套的 Map 对象。
阅读全文