Для меня работает следующее:
Map<String, String> propertyMap = getJsonAsMap(json);
, где getJsonAsMap
определено так:
public HashMap<String, String> getJsonAsMap(String json)
{
try
{
ObjectMapper mapper = new ObjectMapper();
TypeReference<Map<String,String>> typeRef = new TypeReference<Map<String,String>>() {};
HashMap<String, String> result = mapper.readValue(json, typeRef);
return result;
}
catch (Exception e)
{
throw new RuntimeException("Couldnt parse json:" + json, e);
}
}
Обратите внимание, что это не будет , если у вас естьдочерние объекты в вашем json (потому что они не String
, это еще один HashMap
), но будут работать, если ваш json является списком ключевых значений свойств следующим образом:
{
"client_id": "my super id",
"exp": 1481918304,
"iat": "1450382274",
"url": "http://www.example.com"
}