我正在使用jayway JsonPath库使用给定的路径来解析JSON。如果我给出正确的路径,我就能得到字符串值。但是当我给出路径(如果它是数组)时,我想获取地图列表。例如,我有一个如下所示的JSON:
{
"employees": {
"company": "Google",
"people": [{
"name": "John",
"age": 25,
"location": "zurich"
},
{
"name": "Peter",
"age": 27,
"location": "Lucerene"
}]
}
}
下面是我用来解析json的代码。
如果我给出路径$.employees.people
,我得到的是字符串,但我需要列出地图。以下是我使用jsonpath解析Json的代码。
DocumentContext documentContext = JsonPath.parse(jsonStr);
JsonPath jsonPath = JsonPath.compile("$.employees.people");
List<Maps<String,String>> jsonList = documentContext.read(jsonPath) //But this is returning String
任何人都建议采取正确的方法来达到我的期望。
答案 0 :(得分:-1)
尝试使用
DocumentContext documentContext = JsonPath.parse(jsonStr);
JsonPath jsonPath = JsonPath.compile("$.employees.people[?]");
List<Maps<String,String>> jsonList = documentContext.read(jsonPath);
如果您需要更多详细信息。 readmore...