数据对象的名单我有一个JSON结构看起来像这样:嵌入式杰克逊
{"data": [{"mykey": "someval"}, {"mykey": "someotherval"}], "foo": "bar"}
我也有
public MyClass {
public String mykey;
}
现在我想反序列化我的JSON的"data"
内容到一个List<MyClass>
使用杰克逊,所以我有这个代码:
ObjectMapper mapper = new ObjectMapper();
List<MyClass> l = (List<MyClass>) mapper.readerFor(new TypeReference<List<MyClass>>(){}).
withRootName("data").readValue(myJSONString);
但是,这给了我一个e xception:
com.fasterxml.jackson.databind.JsonMappingException: Unexpected token (FIELD_NAME),
expected END_OBJECT: Current token not END_OBJECT (to match wrapper object with root name
'data'), but FIELD_NAME
任何人都知道我需要做什么才能得到这个解析?
你看过http://stackoverflow.com/questions/6349421/how-to-use-jackson-to-deserialise-an-array-of-objects? – ryuu9187
正在创建一个'data'对象而不是一个选项? – Coder
其实,我的JSON还有一个奇怪之处。它还有一些我需要忽略的东西(“foo”:“bar”)。我想我可以添加一个数据对象,但它感觉相当无用 –