如何在JSP中遍历JSON响应?

时间:2018-11-29 17:22:17

标签: java json jsp servlets

我已经创建了一个servlet,它正在创建如下的Json响应:

JSONObject jsonObj      = new JSONObject();
JSONArray  arr = new JSONArray();

       for (int i=0 ; i<2 ; i++)
       {
           temp = new JSONObject();
           temp.put("value" , i+1);
           temp.put("string " , i+1);
           arr.put(temp);
       }
       jsonObj.put("finalList", arr);
       temp= new JSONObject();
       temp.put("emp", 5);
       temp.put("sal", 1000);

       jsonObj.put("dept",temp);

       response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");

        req.setAttribute("depRes",jsonObj);
        RequestDispatcher dispatch= req.getRequestDispatcher("process.jsp");
        dispatch.forward(req, response);

基本上,它会像下面这样进行JSON响应:

{
"finalList": [
   {
      "value" : 1,
      "string": 1
   },
   {
      "value" : 2,
      "string": 2
   }

   ],
"dept":{
     "emp": 5,
     "sal":1000
   }
}

现在,我想将此JSON响应放入我的JSP文件中,并仅将“ finalList”值放在下表中:

Value    String  
-----    -------
1        string 1
.............

我不知道如何从Servlet接收作为响应传递的JSON对象,并在JSP中对其进行处理。任何建议都会有帮助

1 个答案:

答案 0 :(得分:0)

您可以使用javascript进行解析:

var obj = JSON.parse('${requestScope.jsonObject}');