我有一个类似这样的json(为了举例,字段的数量大大减少):
{
"content": {
"id": {"content": "1"},
"param1": {"content": "A"},
"param2": {"content": "55"}
}
}
请记住,我无法控制它,我无法更改它,这是我从api得到的。
我为此创建了一个pojo类,如下所示:
public class PojoClass {
private String id;
private String param1;
private String param2;
// getters and setters
}
然后我用jackson解析json(我必须使用它,请不要建议使用gson或其他方法):
ObjectMapper om = new ObjectMapper();
JsonNode jsonNode = om.readTree(json).get("content");
PojoClass table = om.readValue(jsonNode.toString(), PojoClass.class);
这不起作用,因为id、param1和param2中有json,而不是直接的值。代码可以很好地处理json,如下所示:
{
"content": {
"id": "1",
"param1": "A",
"param2": "55"
}
}
但不幸的是,我需要的值存储在“content”字段下。
解决这个问题最干净的方法是什么?
我知道我可以硬编码这个,然后在构造函数中一个接一个地将所有值提取到变量中,但是有很多这样的值,而不是像这个例子中的3个,显然这不是正确的方法。
暂无答案!
目前还没有任何答案,快来回答吧!