2012-09-26 7 views
5

ich Neuling bin auf Servlets und ich brauche Daten aus der Datenbank erhalten ChartJQuery: Ajax-Aufruf Servlet & bekommen Daten als Json

$.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 
    } 
    }); 

was mein Servlet würde angezeigt werden Daten zu erhalten

+1

Verwenden Sie die JavaScript 'log' Methode des' console'-Objekt zu erhalten, die die Struktur zu sehen das Objekt, das Sie 'data' aufgerufen haben. Dann können Sie entscheiden, wie das 'data' Objekt in Ihrer Erfolgsfunktion zu bearbeiten ist. – steampowered

Antwort

6

so ist hier die Antwort

Sie Daten auf Ihre Variable

$.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); 

         }); 
       }); 

      } 
     }); 
schieben jQuery

danach müssen Sie Servlet-JSON-Objekt

Servlets wäre wie

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(); 

} 

hoffe, das hilft

+0

danke. Ich werde es versuchen – DamnCoder

+0

es funktioniert Vielen Dank – DamnCoder

+0

Sie besser, dass in Try-Catch-Block und kümmern sich um Ausnahmen. –