将请求的查询字符串解析为JSON

时间:2018-03-24 16:18:55

标签: java json parsing request

我将接收带有作为查询字符串传递的JSON对象的请求,该对象将不再具有JSON结构,它将是这样的:

http:/mysite/api/doSomething?name=name&address=address...

我需要将它作为一个遵循JSON结构的String存储,问题是作为查询字符串传递的原始JSON对象可能具有集合的属性,我无法找到正确解析它的方法。

是否有Java功能或库可以轻松实现这一目标?

1 个答案:

答案 0 :(得分:1)

我假设您在控制器中使用spring mvc / jersey。在这种情况下,你可以做这样的事情

@RequestMapping(value = "/mysite/api/doSomething", method = RequestMethod.GET)
public String search(
@RequestParam Map<String,String> allRequestParams) {
     JSONObject js = new JSONObject();
    for (Map.Entry<String,String> entry : allRequestParams.entrySet()){
        js.put(entry.getKey(), entry.getValue());
    }
   String jsonString = js.toString();
}

基本上获取所有queryparam并构造JSONObjcet,JACKSON库在这里不会有太大用处。