webentwicklung-frage-antwort-db.com.de

Map JSON To List <Map << String, Object >>

Ich habe einen Json des Formats

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

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

Ich muss in eine Liste von Karten eintauchen. Wie kann ich dasselbe bekommen? Auch wenn ich es in eine Liste von Strings konvertieren kann, so dass jeder String die Form hat

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

}

ich habe eine Methode, um es in eine Karte umzuwandeln. Wie kann man also eine solche Liste von Strings extrahieren?

6
Pranay Kumar

Sie müssen eine TypeReference an readValue mit dem gewünschten Ergebnistyp übergeben:

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

Verwenden Sie gson mit dem angegebenen Typ, um in eine Liste von Karten zu konvertieren:

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