Ho creato un array JS come questo var detailsArr = new Array();
e spingo alcuni dati in questo array.Come inviare array js in Ajax
Ora ho spingere questo array tramite Ajax al mio controller Spring Ti piace questa
$.ajax({
type: "POST",
url: "submit",
data: ({detailsArr : detailsArr }),
success: function(html){
alert("Submitted");
}
});
Sul lato controller Primavera, ricevo questo array attraverso la @RequestBody
annotazione. La firma del metodo di controllo primavera si presenta così
public String submit(@RequestBody String body)
Ma la matrice quando ha ricevuto sul lato controller primavera è fondamentalmente una stringa di questo formato
detailsArr[]=add&detailsArr[]=test1&detailsArr[]=test2&detailsArr[]=test3
devo dividere manualmente questa stringa per ottenere i valori , questo è un processo ingombrante. C'è un modo in cui posso ottenere l'array così com'è, quindi devo solo iterare su di esso per ottenere i valori.
Si prega di aggiungere la firma del metodo dal vostro controller di primavera (con annotazioni) e un dump di 'detailsArr' (' console.log' esso o qualcosa del genere) –
La firma del mio controller Spring assomiglia a questo 'public String submit (@RequestBody String body)' e il dump dei dettagliArr è come questo 'detailsArr [] = add & detailsArr [] = test1 & detailsArr [] = test2 & detailsArr [] = test3' – Vivek
dopo aver letto il corpo della richiesta, si dovrebbe ottenere una stringa formattata in json, e poi si dovrebbe scrivere o usare un JsonUtil e convertire la stringa json in classe (array o cosa vuoi, quale formato) – erimerturk