【问题标题】:How to iterate over JSON response in JSP?如何在 JSP 中迭代 JSON 响应?
【发布时间】:2019-05-01 20:04:12
【问题描述】:

我创建了一个 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 中处理它。任何建议都会有所帮助

【问题讨论】:

  • 您可以使用 javascript 或 JSTL 来执行此操作。更简单的选择是 JSTL。
  • @JonathanLaliberte 你能告诉我如何在 JSTL 中做到这一点吗?
  • 你以前用过jstl吗?你在 Maven 上吗?
  • @JonathanLaliberte 我没用过。
  • 好的,我可以帮助你,但首先你需要修复你的 json 对象。它正在产生 stackoverflow 错误。

标签: java json jsp servlets


【解决方案1】:

你可以用javascript解析它:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 2020-06-23
    • 1970-01-01
    • 2015-05-15
    • 2013-05-31
    相关资源
    最近更新 更多