在Java中解析JSON服务器端?

时间:2016-02-14 16:04:10

标签: java json

客户方我有:

keyList = ["560", "565", "566"]

我需要通过POST请求将其发送到服务器。 所以,我决定使用JSON。

var jsonString= {keyList:JSON.stringify(keyList)};
$.ajax({
        type: 'POST',
        url: url, 
        data: {"keyList":jsonString},
        dataType: "json"
    });

服务器端我完成了:

@RequestMapping(value = "/Controller/parsingJSON", method = RequestMethod.POST)
public void parsingJSON(@RequestParam("keyList") String keyList, HttpServletResponse response, HttpServletRequest request){         
        List<String> listRes= new ArrayList<String>(Arrays.asList(keyList.split(",")));
        System.out.println(listRes);
}
  

listRes = [[“560”,“565”,“566”]]

如果我打印第一个元素,我会得到["560"

我需要listRes["560", "565", "566"]而不是[["560", "565", "566"]]

1 个答案:

答案 0 :(得分:0)

如果您将JSON字符串作为参数发送到keyList,您应该这样做

$.ajax({
    type: 'POST',
    url: url, 
    data: {"keyList":JSON.stringify(keyList)},
    dataType: "json"
});

在服务器上,您将获得一个JSON字符串,如果您想将其反序列化为对象,则应手动解析此字符串。