我正在尝试用Java创建一个类似于此的json的Dto类。
{
"abcList":[
{
"keyA":"valA",
"lstB":[{
"keyC":"valC"
},{
"keyC":"valC1"
}]
},{
"keyA":"valA",
"lstB":{
"keyC":"valC2"
}
}
]
}
Json甚至有效吗?在列表abcList中,第一个对象具有列表“lstB”,而在第二个对象中,字段“lstB”不是列表。
如果json有效,我将如何创建相应的Java类? 这不起作用。
class TopObject{
List<ABC> abcList;
}
class ABC{
public String keyA;
public List<B> lstB;
}
class B{
public String keyC;
}
我的意思是我可以用gson成功解析它,用下面的代码遍历json的每个元素,
if(lstB.isJsonArray()){
System.out.println("lstb is array");
List<B> arLstB = parseBArray(lstB);
abc.setLstB(arLstB);
}else{
System.out.println("lstb is not array");
B b = parseB(lstB);
abc.addB(b);
}
但是原始的json非常大,我最终会编写迭代逻辑几天。我想要一个解决方案,我可以正确地对其进行注释,并像这样一次完成映射。
gson.fromJson(jsonInString, TopObject.class);