使用 jackson 或 Gson 解析具有没有字段名称的数组的 json
Parse json which has array without filed names using jackson or Gson
我收到 json,格式如下。我如何拥有相应的 Java class 以便可以使用 Jackson 或 Gson 正确映射它。
"data": [
{
"name": "foobar",
"timeSeries": [
[
1576451246,
55.0
],
[
1576453491,
82.0
]
]
}
]
这是 Java class 我目前有:
public class Data {
@Key
public String name;
@Key
public TimeSeries[] timeSeries; // How will this work? What will time series class contain
}
具体来说,我无法弄清楚 TimeSeries class 会是什么样子。看来它必须是int/long和float/double的数组。但不确定如何表示以便 jackson 或 gson 可以正确解析
我相信你需要一个包装器 class - 比如说 Response
- 保存你得到的 JSON 数据,查看评论,它是如何 'decrypted':
@Getter @Setter
public class Response {
// json object named 'data' is an array holding -say- many Data objects
// (better name might be 'datas' or so since it has many objects, plural)
@Getter @Setter
private Data[] data;
// Data contains name and and an array of Double arrays
@Getter @Setter
public static class Data {
private String name;
private Double[][] timeSeries;
}
}
我收到 json,格式如下。我如何拥有相应的 Java class 以便可以使用 Jackson 或 Gson 正确映射它。
"data": [
{
"name": "foobar",
"timeSeries": [
[
1576451246,
55.0
],
[
1576453491,
82.0
]
]
}
]
这是 Java class 我目前有:
public class Data {
@Key
public String name;
@Key
public TimeSeries[] timeSeries; // How will this work? What will time series class contain
}
具体来说,我无法弄清楚 TimeSeries class 会是什么样子。看来它必须是int/long和float/double的数组。但不确定如何表示以便 jackson 或 gson 可以正确解析
我相信你需要一个包装器 class - 比如说 Response
- 保存你得到的 JSON 数据,查看评论,它是如何 'decrypted':
@Getter @Setter
public class Response {
// json object named 'data' is an array holding -say- many Data objects
// (better name might be 'datas' or so since it has many objects, plural)
@Getter @Setter
private Data[] data;
// Data contains name and and an array of Double arrays
@Getter @Setter
public static class Data {
private String name;
private Double[][] timeSeries;
}
}