Jquery: Ajax call to servlet & get data as json

时间:2021-10-07 07:46:39

I'm newbie on servlet and I need to get data from database to display chart

我是servlet的新手,我需要从数据库中获取数据以显示图表

 $.ajax({
     url : "NameServlet",
     dataType : 'json',
     error : function(){
        alert("Error Occured");
     },
     success : function(data) {
        var receivedData = [];
    //how to put data in var (i.e. receivedData) which is received from servlet
     }
    });

what would be my servlet to get data

什么是我的servlet来获取数据

1 个解决方案

#1


6  

so here is the answer

所以这就是答案

you jquery to push data to your variable

你jquery将数据推送到你的变量

$.ajax({

            url : "NameServlet",
            dataType : 'json',
            error : function() {

                alert("Error Occured");
            },
            success : function(data) {
                var receivedData = [];

                $.each(data.jsonArray, function(index) {
                    $.each(data.jsonArray[index], function(key, value) {
                        var point = [];

                            point.push(key);
                            point.push(value);
                            receivedData.push(point);

                        }); 
                });

            }
        });

after this you need servlet to get JSON object

在此之后,您需要servlet来获取JSON对象

Servlet would be like

Servlet会是这样的

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class NameServlet extends HttpServlet {

        int []sampleData=null;
        //sampleData= here you can get data from database

        //writing data to json
        response.setContentType("application/json;charset=utf-8");

        JSONObject json = new JSONObject();
        JSONArray array = new JSONArray();
        JSONObject member =  new JSONObject();

        member.put("arrayData", sampleData);
        array.add(member);

        json.put("jsonArray", array);

        PrintWriter pw = response.getWriter(); 
        pw.print(json.toString());
        pw.close();

}

Hope this helps

希望这可以帮助

#1


6  

so here is the answer

所以这就是答案

you jquery to push data to your variable

你jquery将数据推送到你的变量

$.ajax({

            url : "NameServlet",
            dataType : 'json',
            error : function() {

                alert("Error Occured");
            },
            success : function(data) {
                var receivedData = [];

                $.each(data.jsonArray, function(index) {
                    $.each(data.jsonArray[index], function(key, value) {
                        var point = [];

                            point.push(key);
                            point.push(value);
                            receivedData.push(point);

                        }); 
                });

            }
        });

after this you need servlet to get JSON object

在此之后,您需要servlet来获取JSON对象

Servlet would be like

Servlet会是这样的

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class NameServlet extends HttpServlet {

        int []sampleData=null;
        //sampleData= here you can get data from database

        //writing data to json
        response.setContentType("application/json;charset=utf-8");

        JSONObject json = new JSONObject();
        JSONArray array = new JSONArray();
        JSONObject member =  new JSONObject();

        member.put("arrayData", sampleData);
        array.add(member);

        json.put("jsonArray", array);

        PrintWriter pw = response.getWriter(); 
        pw.print(json.toString());
        pw.close();

}

Hope this helps

希望这可以帮助