首页前端开发其他前端知识ajax servlet返回json

ajax servlet返回json

时间2023-10-28 11:14:03发布访客分类其他前端知识浏览242
导读:Ajax技术是一种在Web应用中常用的技术,可以异步交换数据,使页面不必刷新就能与服务器交互。在AJAX中,服务端通过Servlet返回JSON格式的数据,从而实现前后端数据的交互。下面我们就来看一下如何使用Servlet返回JSON数据。...

Ajax技术是一种在Web应用中常用的技术,可以异步交换数据,使页面不必刷新就能与服务器交互。在AJAX中,服务端通过Servlet返回JSON格式的数据,从而实现前后端数据的交互。下面我们就来看一下如何使用Servlet返回JSON数据。

import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.*;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import com.alibaba.fastjson.JSON;
@WebServlet("/getData")public class GetDataServlet extends HttpServlet {
        private static final long serialVersionUID = 1L;
    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {
            ListMapString,Object>
    >
     dataList = new ArrayList>
    ();
            MapString,Object>
     data1 = new HashMap>
    ();
            data1.put("name", "张三");
            data1.put("age", 20);
            dataList.add(data1);
            MapString,Object>
     data2 = new HashMap>
    ();
            data2.put("name", "李四");
            data2.put("age", 30);
            dataList.add(data2);
            String jsonData = JSON.toJSONString(dataList);
            response.setContentType("application/json;
    charset=UTF-8");
            PrintWriter out = response.getWriter();
            out.print(jsonData);
            out.close();
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {
            doGet(request, response);
    }
}

在代码中,我们首先定义了两个Map对象,每个Map对象都有两个键值对,表示一个人的姓名和年龄。然后将两个Map对象添加到List中,并将List转换为JSON字符串。最后,设置ContentType为application/json,通过PrintWriter输出JSON字符串。

在前端页面中,我们可以使用jQuery的$.ajax()方法来向Servlet发送请求,并用success回调函数来处理JSON数据:

$.ajax({
    url: "getData",    type: "get",    dataType: "json",    success: function(data) {
        $.each(data, function(index, item) {
                var name = item.name;
                var age = item.age;
                var html = "tr>
    td>
    " + name + "/td>
    td>
    " + age + "/td>
    /tr>
    ";
                $("#dataTable").append(html);
        }
    );
    }
}
    );
    

在回调函数中,我们使用$.each()方法遍历返回的JSON数据,并将每个人的姓名和年龄显示在表格行中。

如此一来,我们就成功地使用Servlet返回JSON数据,并通过AJAX技术来更新网页内容了。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ajax servlet返回json
本文地址: https://pptw.com/jishu/514432.html
alibaba json 转换map android json 解析

游客 回复需填写必要信息