我的控制器中出现String jsonObject
。
结构如下:
{
"name":"name",
"schema": {
...
...
}
}
我需要将其解析为一个普通的Java对象,并以字符串形式接收schema
(保存结构)。当我使用System.out.print("schema")
时,我希望看到:
{
...
...
}
我有一个带有Collection
和String name
字段的POJO Object schema
。
我正在使用GSON从Collection.class
获取String json
:
new Gson().fromJson(json, Collection.class);
当我尝试打印Collection.schema
时,得到以下输出:
{......}
-一行。
我真的需要将此对象作为String
不带格式
答案 0 :(得分:0)
这应该有效。基本上,您先对Collection对象进行水化处理,然后再通过Gson发送回架构。完成。
Gson gson = new Gson();
Collection collection = gson.fromJson(json, Collection.class);
String schema = gson.toJson(collection.getSchema());
System.out.println(schema);
可能会询问您为什么要接受来自控制器的字符串?也许您可以获得用于传递完全转换的Collection对象并为自己节省步骤的框架?
另外,对于您的Collection.schema,通常使用Map<String, Object>
而不是Object来减少这种“模式”少的范例类型。