我需要在java中解析这个json结构。
{
"collection": "collectionname",
"field_rules": [{
"fieldname": "fieldname1",
"modules":
[{
"module": "module1",
"options": {
"key1": ["val1", "val2", "val3"]
}
}, {
"module": "module2"
}, {
"module": "module3"
}, {
"module": "module5"
}]
}, {
"fieldname": "fieldname2",
"modules":
[{
"module": "module6",
"options": {
"keytype": [{
"key1": "val1"
}, {
"key2": "val2"
}],
"key3": "val3"
}
}]
}, {
"fieldname": "fieldname3",
"modules":
[{
"module": "module7",
"options": {
"key1": "val1"
}
}, {
"module": "module8",
"options": {
"key1": "val1"
}
}]
}, {
"fieldname": "fieldname4",
"modules": [{
"module": "module9",
"options": {
"key1": ["val1", "val2"],
"key2": "val1",
"key3": "val1"
}
}]
}]
}
我写了一些pojo类,让我解析json直到像这样的模块(只在这里写字段......)。
Class Command {
String collection;
List<FieldRules> field_rules;
}
Class FieldRules {
String fieldname;
List<Module> modules;
}
Class Modules {
String module;
Options options;
}
现在我需要一个用于选项的pojo类。如您所见,选项可以是示例中的3-4种结构中的任何一种。如何为Options类创建一个pojo?或者除了使用pojo类反序列化这样复杂的json结构之外还有其他选择吗?在此先感谢!!!
我尝试使用从基类Options扩展的4个自定义类,当我尝试像这样访问它们时:commandJson.getField_rules()。get(1).getModule()。get(0).getOptions()。 getOptionType我得到一个空值。我该如何解决这个问题?