繁体   English   中英

如何将Json从servlet发送到JSP,而不将其转换为String

[英]How to send Json to JSP from servlet , with out converting it to a String

我的JSP中有一个Ajax调用,该调用以Java字符串的形式返回JSON对象。

public void doGet(HttpServletRequest request, HttpServletResponse res) throws IOException, ServletException {
    try {
        String fromDate = request.getParameter("drFrom");
        String toDate = request.getParameter("drTo");
        JSONArray jsonArray = chartData.getCCSBJson(fromDate, toDate);
        res.setContentType("application/json");
        res.getWriter().write(jsonArray.toString());

我可以不使用res.getWriter().write(jsonArray.toString());内的res.getWriter().write(jsonArray.toString());将JSON发送到JSP jsonArray.toString() res.getWriter().write(jsonArray.toString()); ,因为在将其作为字符串发送后,我无法在JSP中解析JSON。

这与帖子有关: 如何从Java Script中的Ajax调用解析JSON对象

只需将JSON字符串解析为Servlet本身的Java对象,然后将Java对象而不是纯String传递给JSP。

遵循的步骤:

  • 只需创建一个Java POJO类即可,它是JSON字符串的副本。
  • 在Servlet本身中将JSON字符串转换为POJO类对象
  • 将HTTP请求中的对象设置为属性
  • 在JSP中从HTTP请求获取对象

注意: Java POJO类必须是Serializable

尝试使用JavaScript-将字符串解析为JSON的JSON.parse()方法,可以选择转换在JavaScript中解析产生的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM