【问题标题】:Map JSON To List<Map<<String, Object>>将 JSON 映射到 List<Map<<String, Object>>
【发布时间】:2017-11-25 16:13:57
【问题描述】:

我有一个 JSON 格式

[{
    "id" : "a01",
    "name" : "random1",
    "val" : "random2"

},
{
    "id" : "a03",
    "name" : "random3",
    "val" : "random4"
}]

我需要将它映射到一个 List 持有各种 Map 对象。如何实现?

即使我能够将此 JSON 转换为表单的 ListString

{
    "id" : "a01",
    "name" : "random1",
    "val" : "random2"

}

然后我有一种方法可以将每个 String 转换为 Map

【问题讨论】:

标签: java json jackson objectmapper


【解决方案1】:

您需要将TypeReference 传递给readValue,并使用所需的结果类型:

ObjectMapper mapper = new ObjectMapper();
List<Map<String, Object>> data = mapper.readValue(json, new TypeReference<List<Map<String, Object>>>(){});

【讨论】:

    【解决方案2】:

    使用指定类型的 gson 转换为地图列表:

    Gson gson = new Gson();
    Type resultType = new TypeToken<List<Map<String, Object>>>(){}.getType();
    List<Map<String, Object>> result = gson.fromJson(json, resultType);
    

    【讨论】:

      【解决方案3】:

      私有列表> map_string;

      你需要传递的Json:-

      {
      "map_formula" : [ 
              {
                  "A+" : "if(price<400),\"40000\",0",
                  "B" : "",
                  "c" : "",
                  "d" : "",
                  "e" : ""
              }, 
              {
                  "poor" : "value for poor",
                  "good" : "300",
                  "average" : "300",
                  "excellent" : "300"
              }
          ]
      }
      

      【讨论】:

        猜你喜欢
        • 2018-09-22
        • 2020-08-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-27
        • 2021-04-29
        • 1970-01-01
        • 2022-07-26
        • 2010-10-05
        相关资源
        最近更新 更多