2017-03-19 2 views
0

Wenn DATA1 und DATA2 JavaScript-Arrays sindAbrufen von JavaScript-Array von Servlet

zB [ "AA", "BB"] und [ "xx", "yy"]

$.ajax({ 
    url : 'testServlet', 
    type: 'post', 
    data : 
     [{"array1" : data1}, 
     {"array2" : data2}] 
    , 
    success : function(responseText) { 
     //... 
    } 
}); 

wie kann ich abrufen es aus dem testServlet ??

oder hat meine Daten in Form von JSON-Format sein? (Nicht mit diesem Teil vertraut)

I

String[] data= request.getParameterValues("array1"); 

mit versucht haben, aber es ist null

+0

Verwenden 'request.getReader()' die Daten zu erhalten. –

+0

Mögliches Duplikat von [Korrekte Methode zum Analysieren von JSON-Objekten, die Arrays enthalten, in Java-Servlets (z. B. mit Gson)] (http://stackoverflow.com/questions/9829819/correct-way-for-parsing-json-objects-containing-) arrays-in-java-servlets-with-gs) –

Antwort

0

können Sie drucken Sie die Anfrage Parameter und deren Werte mit dem folgenden Ausschnitt:

Enumeration params = httpRequest.getParameterNames(); 
while(params.hasMoreElements()){ 
    String paramName = (String)params.nextElement(); 
    System.out.println(paramName + " = " + httpRequest.getParameter(paramName)); 
} 

Dies sollte alle Parameter und Werte drucken. Dies hilft Ihnen beim Überprüfen/Debuggen, was auf der Serverseite abgerufen wird.

0
var test = [{"array1" : data1}, 
     {"array2" : data2}]; 

$.ajax({ 
    type: 'post', 
    url: 'testServlet', 
    dataType: 'JSON', 
    data: { 
     test: JSON.stringify(test) 
    }, 
    success : function(responseText) { 
    //... 
} 
}); 

Und auf testServlet

String json = request.getParameter("test"); 
+0

danke, aber ich hatte gehofft, die Elemente in den 2 Arrays abrufen zu können, aber jetzt bekomme ich nur einen String wie diesen [{"array1": [" aa "," bb "]}, {" array2 ": [" xx "," yy "]}]? – securenai

+0

gibt es Unterschiede in Array und Json. In Ihrer Frage ist es widersprüchlich, Sie zeigten Array, aber übergeben es als JSON. – Ravi

Verwandte Themen