Gson反序列化csv行的映射

时间:2017-10-10 17:08:48

标签: java json gson deserialization

我有一个json api响应,结构类似于csv文件

{
    "headers": ["a", "b", "c"],
    "row1": [1, 2, 3],
    "row2": [4, 5, 6]
}

我需要为该json对象中的每一行获取一个POJO

理想情况下,我想宣布它像

class Row {
    @SerializedName("a")
    Integer a;

    @SerializedName("b")
    Integer b;

    @SerializedName("c")
    Integer c;
}

所以我的问题是,我可以编写一个自定义反序列化程序,以便我可以做这样的事情吗?序列化另一个方向也很有用。

Gson gson = new Gson();  
List<Row> rows = gson.fromJson(apiResponse, new List<Row>());  

1 个答案:

答案 0 :(得分:0)

问题不是反序列化。
解决您问题的方法。

  1. 使用defaulet解串器进行解析。
  2. 使用mapstruct将已解析的列表转换为对象