有一个带有下降位置的json,拾取位置和订单信息,下拉/拾取位置没有嵌套,但我想反序列化为一个订单对象,它嵌套了拾取位置模型和下降位置模型。我想用Gson.fromJson()自动反序列化。我怎样才能达到它?
非嵌套json如下:
{
dropoffAddress = "Changsha Railway Station";
dropoffCity = Changsha;
dropoffLoc = (
"113.012966",
"28.195013"
);
dropoffLocation = "Changsha Railway Station Changsha";
dropoffState = Hunan;
orderNo = 3467;
orderStatus = 0;
orderTime = "2015-07-09T01:08:42.089Z";
pickupAddress = "Yanzishan Rd";
pickupCity = Changsha;
pickupState = Hunan;
}
订单型号:
public class OrderModel {
String orderNo;
String orderTime;
int OrderStatus;
AddressModel pickupAddress;
AddressModel dropoffAddress;
}
AddressModel:
public class AddressModel {
String address;
String city;
String location;
String state;
LatLng loc;
}
答案 0 :(得分:0)
最后,我以一种艰难的方式实施了它。
json对象的所有字段都映射到model,然后我编写了一个getPickupAddress()和getDropoffAddress()来获取相关的属性。代码如下。
public class OrderModel {
String orderNo;
String orderTime;
int OrderStatus;
String dropoffAddress;
String dropoffCity;
Double[] dropoffLoc;
...
String pickupAddress;
String pickupCity;
Double[] pickupLoc;
AddressModel pickupAddressModel;
AddressModel dropoffAddressModel;
public AddressModel getPickupAddressModel() {
AddressModel addressModel = new AddressModel();
addressModel.setAddress = this.pickupAddress;
addressModel.setCity = this.pickupCity;
...
return addressModel;
}
Public AddressModel getDropoffAddressModel() {
AddressModel addressModel = new AddressModel();
addressModel.setAddress = this.dropoffAddress;
addressModel.setCity = this.dropoffCity;
...
return addressModel;
}
}