我调用一个返回 Json 对象的 WS,如下所示:
{
"id": "salton",
"name": "salton",
}
我使用它解析没有任何问题
ObjectMapper mapper = new ObjectMapper();
return mapper.readValue(jsonStr, Show.class);
然后我有另一个返回对象列表的WS,如下
{
"id": "saltonId",
"name": "salton",
},
{
"id": "elCordeLaCiutat",
"name": "elCordeLaCiutat",
}
我想用它来解析
ObjectMapper mapper = new ObjectMapper();
return mapper.readValue(jsonStr, List<Show.class>.class);
但是我遇到了编译问题
Multiple markers at this line
- List cannot be resolved to a variable
- Syntax error on token ">", byte expected after this
token
最佳答案
对象列表应该被包裹在 []
中,如下所示
[
{
"id": "saltonId",
"name": "salton",
},
{
"id": "elCordeLaCiutat",
"name": "elCordeLaCiutat",
}
]
你可以这样解开:
ObjectMapper mapper = new ObjectMapper();
List<Show> shows = Arrays.asList(mapper.readValue(json, Show[].class));
关于java - 使用 Jackson 解析 Json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48377796/