在Java中使用Gson反序列化RouteXL响应很困难,因为RouteXL返回多个对象而不是数组

在Java中使用Gson反序列化RouteXL响应很困难,因为RouteXL返回多个对象而不是数组,java,json,rest,api,gson,Java,Json,Rest,Api,Gson,我正在尝试使用Java对RouteXL的响应进行反序列化,但是,路由作为单独的对象返回,而不是一个数组返回,这是一个难题。有人知道一种简单的方法来反序列化来自RouteXL API1的响应吗?不幸的是,API2也做了同样的事情 Json响应: { "id": "xJFPS2Z3", "count": 4, "feasible": true, "route": { "0": { "name": "11 Main Street", "arrival":

我正在尝试使用Java对RouteXL的响应进行反序列化,但是,路由作为单独的对象返回,而不是一个数组返回,这是一个难题。有人知道一种简单的方法来反序列化来自
RouteXL API1
的响应吗?不幸的是,API2也做了同样的事情

Json响应:

{
  "id": "xJFPS2Z3",
  "count": 4,
  "feasible": true,
  "route": {
    "0": {
      "name": "11 Main Street",
      "arrival": 0,
      "distance": 0
    },
    "1": {
      "name": "19 Slate Road",
      "arrival": 10,
      "distance": 9.3
    },
    "2": {
      "name": "234 Woodland Road",
      "arrival": 18,
      "distance": 14.5
    },
    "3": {
      "name": "15 Great Eastern Road",
      "arrival": 29,
      "distance": 26.4
    }
  }
}
您几乎需要创建一个这样的类来保存所有响应:

公共类路由{
专用航路点1;
专用航路点2;
专用航路点3;
专用航路点4;
专用航路点5;
...
公共航路(航路点1、航路点2、航路点3、航路点4、航路点5){
这是0.1=1;
这是0.1=2;
这个0.3=3;
这个0.4=4;
这个0.5=5;
}
}
这是无效的java,因为变量不能是数字

我尝试过使用诸如和之类的网站,但它们几乎与我所做的一样


我对JSON和Rest API还很陌生,所以如果显而易见的话,我深表歉意。

相反,根对象中的
Route
类使用
Map

private Map<String, Waypoint> route;
私有地图路径;

完美的工作方式和快速的响应。谢谢你,迈克。