杰克逊将 json 转换为字符串映射和列表
Jackson to convert a json into a map of String and a list
我有一个 json 如下所示
{
"department": [
{
"status": "active",
"count": "100"
},
{
"status": "active",
"count": "300"
}
],
"finance": [
{
"status": "inactive",
"count": "500"
},
{
"status": "active",
"count": "450"
}
]
}
我的对象如下
class CurrentInfo
{
private String status;
private int count;
//getters and setters
}
我想将此 JSON 转换为 Map<String,List<CurrentInfo>>
。我可以使用以下
转换单个节点
ObjectMapper mapper = new ObjectMapper();
CurrentInfo currentinfo = mapper.readValue(jsonString, CurrentInfo.class);
有什么方法可以将前面提到的 JSON 直接转换成 Map<String,List<CurrentInfo>>
是的,你可以,根据上面的 JSON count
是 String
类型而不是 int
class CurrentInfo {
private String status;
private String count;
//getters and setters
}
使用TypeReference
将json字符串转换为java对象
Map<String, List<CurrentInfo>> currentInfo = mapper.readValue(
jsonString,
new TypeReference<Map<String, List<CurrentInfo>>>() {});
我有一个 json 如下所示
{
"department": [
{
"status": "active",
"count": "100"
},
{
"status": "active",
"count": "300"
}
],
"finance": [
{
"status": "inactive",
"count": "500"
},
{
"status": "active",
"count": "450"
}
]
}
我的对象如下
class CurrentInfo
{
private String status;
private int count;
//getters and setters
}
我想将此 JSON 转换为 Map<String,List<CurrentInfo>>
。我可以使用以下
ObjectMapper mapper = new ObjectMapper();
CurrentInfo currentinfo = mapper.readValue(jsonString, CurrentInfo.class);
有什么方法可以将前面提到的 JSON 直接转换成 Map<String,List<CurrentInfo>>
是的,你可以,根据上面的 JSON count
是 String
类型而不是 int
class CurrentInfo {
private String status;
private String count;
//getters and setters
}
使用TypeReference
将json字符串转换为java对象
Map<String, List<CurrentInfo>> currentInfo = mapper.readValue(
jsonString,
new TypeReference<Map<String, List<CurrentInfo>>>() {});