鉴于以下数据
{
"version" : 1,
"data" : [ [1,2,3], [4.5,6]]
}
Run Code Online (Sandbox Code Playgroud)
我尝试了以下定义并使用 ObjectMapper.readValue(jsonstring, Outer.class)
class Outer {
public int version;
public List<Inner> data
}
class Inner {
public List<Integer> intlist;
}
Run Code Online (Sandbox Code Playgroud)
我有:
无法反序列化START_ARRAY标记内部的实例"
在外课,如果我说
List<List<Integer> data;
Run Code Online (Sandbox Code Playgroud)
然后反序列化工作.
但是在我的代码中,Outer和Inner类有一些与业务逻辑相关的方法,我想保留类结构.
我知道问题是杰克逊无法将内部数组映射到"内部"类.我必须在杰克逊中使用树模型吗?或者有些我仍然可以在这里使用DataModel?