使用GSON库获取JSON对象/数组而不转换为pojos

问题描述 投票:0回答:2

我使用杰克逊将json字符串转换为json对象/数组,如下所示:

JSONObject jsonObj = XML.toJSONObject(myXmlString);
JSONObject userObj = jsonObj.getJSONObject("user"); // is there a GSON version of this? 
JSONArray orders = userObj.getJSONArray("orders");

我的主要问题是:是否有一个GSON版本可以获取json对象/数组而不转换为pojo?我的json非常复杂,因此很难创建pojos。

第二,gson是否允许您像jackson一样将xml字符串转换为json(第1行)?

java json jackson gson
2个回答
0
投票

第一个问题:

您可以通过json字符串创建JsonObject

String json = "{ \"key1\": \"value1\", \"key2\": false}";
JsonObject jsonObject = new JsonParser().parse(json).getAsJsonObject();

否则,您可以创建Map对象

String jsonString = "{'employee.name':'Bob','employee.salary':10000}";
Gson gson = new Gson();
Map map = gson.fromJson(jsonString, Map.class);

供参考:https://www.baeldung.com/gson-json-to-map

关于第二个问题:

我在stackoverflow中发现了this问题


0
投票

是否有GSON版本来获取json对象/数组而没有转换为pojo吗?

© www.soinside.com 2019 - 2024. All rights reserved.