comment retourner plusieurs objets json de la servlet java en utilisant une requête ajax
Je fais construire une application web à l'aide de jsp et servlet, j'envoie une requête ajax de jsp et je veux le retour de deux objets json à partir de servlet. J'ai essayé de faire ce qui suit, mais le code ne fonctionne pas.
//en jquery, j'ai écrit ce code
var id = $(this).attr('id');
var paramenters = {"param":id};
$.getJSON("MyServlet", paramenters, function (data1,data2){
$("h3#name").text(data1["name"]);
$("span#level").text(data1["level"]);
$("span#college").text(data2["college"]);
$("span#department").text(data2["department"]);
});
//en de la servlet j'ai écrit ce code
String json1 = new Gson().toJson(object1);
String json2 = new Gson().toJson(object2);
response.setContentType("application/json");
response.setCharacterEncoding("utf-8");
response.getWriter().write(json1);
response.getWriter().write(json2);
quelqu'un peut m'aider???
source d'informationauteur sahar
Vous devez vous connecter pour publier un commentaire.
Vous devez faire comme ceci:
Côté serveur:
Côté Client:
Espère que cette aide. Cheers
Les envelopper d'un tableau JSON:
ou, emballez-le dans un autre objet:
Vous pouviez retourner un tableau JSON avec à la fois des objets comme des éléments de la matrice. Votre servlet retour JSON qui a une structure comme celle-ci:
Puis votre code javascript peut être quelque chose comme ceci:
vous allez avoir besoin de mettre les deux en une seule chaîne json comme
ce qui les met dans un tableau json
vous pouvez aussi les mettre dans un objet json
@Edgar 's réponse qui fonctionne pour moi. Mais je pense que nous devrions éviter de former la matrice par nous-mêmes, alors je suggère d'utiliser une liste. Les codes sera quelque chose comme ceci:
Et dans le front-end, pour les données que nous recevons, nous pouvons utiliser
data[0]
à retriveobj1
etdata[1]
à retriveobj2
. Les codes sera quelque chose comme ceci (j'utilise de l'ajax ici):