这个数据格式是什么?我如何解析这个Java模型

这个数据格式是什么?我如何解析这个Java模型,java,dataformat,Java,Dataformat,我正在使用外部api(Binance)获取特定加密符号的价格,我收到的数据格式如下: [ [ 1614556800000, "15.00700000", "15.38700000", "14.14100000", "14.37900000", "453842.30000000",

我正在使用外部api(Binance)获取特定加密符号的价格,我收到的数据格式如下:

[   
    [
        1614556800000,
        "15.00700000",
        "15.38700000",
        "14.14100000",
        "14.37900000",
        "453842.30000000",
        1615161599999,
        "6709971.37110000",
        3535,
        "216741.30000000",
        "3217265.31930000",
        "0"
    ],
    [
        1615161600000,
        "14.43300000",
        "14.85900000",
        "14.05000000",
        "14.29200000",
        "539248.70000000",
        1615766399999,
        "7792792.20870000",
        3549,
        "278787.20000000",
        "4045258.39210000",
        "0"
    ]
]
api还解释了每个值的含义。我尝试为这些字段创建Java模型,并使用RestTemplate解析它们,但不起作用

PriceChange[] priceChangeArray = restTemplate.getForObject(uri, PriceChange[].class);
我希望这个API上有JSON格式,因为其他端点使用这种格式返回值。我问这个问题是因为我想避免为此创建解析器

编辑:

字段说明:

  [
    1499040000000,      // Open time
    "0.01634790",       // Open
    "0.80000000",       // High
    "0.01575800",       // Low
    "0.01577100",       // Close
    "148976.11427815",  // Volume
    1499644799999,      // Close time
    "2434.19055334",    // Quote asset volume
    308,                // Number of trades
    "1756.87402397",    // Taker buy base asset volume
    "28.46694368",      // Taker buy quote asset volume
    "17928899.62484339" // Ignore.
  ]
PriceChange.java

@Entity
@IdClass(PriceChangeKey.class)
public class PriceChange {
    @Id
    private String symbol;

    private String interval;

    @Id
    @Temporal(TemporalType.TIMESTAMP)
    private Date openTime;

    @Id
    @Temporal(TemporalType.TIMESTAMP)
    private Date closeTime;

    private Double open;
    private Double high;
    private Double low;
    private Double close;
    private Double volume;
    private Double quoteAssetVolume;
    private Integer numberOfTrades;
    private Double takerBuyBaseAssetVolume;
    private Double takerBuyQuoteAssetVolume;
    private Double ignore;
}
格式是JSON,但不适合自动解析为POJO

解析到
对象[]【】
,然后手动将条目映射到POJO

Object[][]data=restemplate.getForObject(uri,Object[][]class);
List priceChanges=new ArrayList();
对于(对象[]记录:数据){
价格变化。添加(新的价格变化)(
((数字)记录[0]).longValue(),
新的BigDecimal((字符串)记录[1]),
新的BigDecimal((字符串)记录[2]),
新的BigDecimal((字符串)记录[3]),
新的BigDecimal((字符串)记录[4]),
新的BigDecimal((字符串)记录[5]),
((数字)记录[6]).longValue(),
新的BigDecimal((字符串)记录[7]),
((数字)记录[8]).intValue(),
新的BigDecimal((字符串)记录[9]),
新的BigDecimal((字符串)记录[10]),
新的BigDecimal((字符串)记录[11]);
}

或者使用setter方法和任何合适的数据类型。

您的价格变化模型是什么样子的?请为每个值提供一些关于api解释的信息。我已经用其他信息编辑了这个问题,但Andreas的解决方案已经足够好了