1. ホーム

[解決済み】Gsonを使用してJSONをHashMapに変換するにはどうすればよいですか?

2022-03-30 08:01:24

質問

JSON形式でデータを返すサーバーにデータを要求しています。リクエスト時にHashMapをJSONにキャストするのは全く難しくありませんでしたが、他の方法は少しトリッキーなようです。JSONのレスポンスは以下のような感じ。

{ 
    "header" : { 
        "alerts" : [ 
            {
                "AlertID" : "2",
                "TSExpires" : null,
                "Target" : "1",
                "Text" : "woot",
                "Type" : "1"
            },
            { 
                "AlertID" : "3",
                "TSExpires" : null,
                "Target" : "1",
                "Text" : "woot",
                "Type" : "1"
            }
        ],
        "session" : "0bc8d0835f93ac3ebbf11560b2c5be9a"
    },
    "result" : "4be26bc400d3c"
}

このデータにアクセスするには、どのような方法が最も簡単でしょうか?私はGSONモジュールを使っているのですが。

どのように解決するのですか?

はい、どうぞ。

import java.lang.reflect.Type;
import com.google.gson.reflect.TypeToken;

Type type = new TypeToken<Map<String, String>>(){}.getType();
Map<String, String> myMap = gson.fromJson("{'k1':'apple','k2':'orange'}", type);