我有两个webservices返回类似的数据类型,如:
数据1:
{
"FailedValidations": null,
"IsSuccess": true,
"Message": null,
"Result": [
{
"IsMandatory": true,
"ModuleCode": 23,
"ModuleID": 37,
"Name": "Availability Index",
"ParentModuleID": null,
"Sequence": 0,
"UserID": 0,
"UserRoleID": 0
}]}
数据2:
{
"FailedValidations": null,
"IsSuccess": true,
"Message": null,
"Result": [
{
"ModuleCode": 23,
"ModuleID": 37,
"Name": "Availability Index",
"Questions": [
{
"DealerTypes": null,
"IsActive": true,
"ModuleCode": 19,
"ModuleID": 33,
"Options": [
{
"IsActive": true,
"OptionValue": "Yes",
"Sequence": 1,
"SurveyOptionID": 45581,
"SurveyQuestionID": 54751
},
{
"IsActive": true,
"OptionValue": "No",
"Sequence": 2,
"SurveyOptionID": 45582,
"SurveyQuestionID": 54751
}
],
"Sequence": 0
}
我所做的是,我创建了单个DTO类来使用GSON库解析这两个数据。喜欢:
private int UserID;
private boolean IsMandatory;
private int Sequence;
private int ModuleID;
private int ModuleCode;
private String ModuleIcon;
private boolean isQuestionType;
private boolean isStoreWise;
private String ParentModuleID;
private String UserRoleID;
private String Name;
private ArrayList<Question> Questions;
并将这些数据插入DB中的data1和data2表中。
上述方法运行正常,但我只是想知道:
1.这是解析两个相似(几乎)json的最佳方法。
2.Or如果我为每个json数据创建两个DTO是最好的方法。
这是两个以上的最佳方法,为什么?或者有没有其他方法可以做到这一点(除了手动解析)。