我们有一个复杂的json结构,我们需要在Android中进行解析。
{
"StatusCode":0,
"StatusInfo":"Processed and Logged OK",
"Schools":[
{
"Id":"1",
"Name":"School 1",
"Class":[
{
"Id":"11",
"Name":"Class 1",
"Section":[
{
"Id":"12",
"Name":"Section A"
},
{
"Id":"13",
"Name":"Section B"
},
{
"Id":"14",
"Name":"Section C"
}
]
},
{
"Id":"21",
"Name":"Class 2",
"Section":[
{
"Id":"22",
"Name":"Section A"
},
{
"Id":"23",
"Name":"Section B"
}
]
}
]
},
{
"Id":"5",
"Name":"School 2",
"Class":[
{
"Id":"51",
"Name":"Class 1",
"Section":[
{
"Id":"512",
"Name":"Section A"
},
{
"Id":"513",
"Name":"Section B"
},
{
"Id":"514",
"Name":"Section C"
}
]
},
{
"Id":"52",
"Name":"Class 2",
"Section":[
{
"Id":"522",
"Name":"Section A"
},
{
"Id":"523",
"Name":"Section B"
}
]
}
]
}
]
}
我已经检查了Android中关于json解析的各种教程,但是我对这个结构感到困惑,因为它重用了各种数组下的名字。我想检查是否很容易使用像GSON / Jackson这样的库来解析这个json结构。
另外,如果这个结构很大,每次解析这个结构时,它会占用更多内存并且会出现性能问题吗?
此致 亚拉文。 ç
答案 0 :(得分:4)
Gson可能是最好的选择。 如果您不确定如何构建您的java类,您可以使用您在线获得的json代码轻松生成类 - > JsonGen
答案 1 :(得分:0)
来自Gson Performance and Scalability
的参考资料
- 字符串:反序列化的字符串 超过25MB没有任何问题
- 大型收藏品:
o Serialized a collection of 1.4 million objects
o Deserialized a collection of 87,000 objects
- Gson 1.4提高了字节数组的反序列化限制 从80KB开始收集超过11MB。