0
名单的情况下,我必须创建基于此类杰克逊JSON:与杰克逊JSON反序列化错误在Java中
public class One {
public long param;
public List<Two> two;
public static class Two{
public long param;
public List<Short> param2;
}
}
我已经定义了两个构造为每个类,我用它来创建的以后写在json文件上的对象。结果是(有效的JSON):
[{"param":1,"Two":[{"param":4,"param2":[1,2,3]},{"param":5,"parma2":[4,5,6]}]},{"param":2,"Two":[{"param":6,"param2":[1,2,3]}]}]
现在我想阅读并加载参数和我定义:
mapper.configure(Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true); //tried with and without
JsonFactory f = new JsonFactory();
JsonParser jp;
jp = f.createJsonParser(FILE);
jp.nextToken();
while (jp.nextToken() == JsonToken.START_OBJECT) {
mapper.readValue(jp, One.class);
}
jp.close();
我有这样的错误:
Can not deserialize instance of json.One$Two out of START_ARRAY