Votre problème réel est que vous ne savez pas comment traiter la chaîne JSON du côté client. Je suggère fortement d'utiliser jQuery pour cela, car cela simplifie beaucoup la manipulation DOM. Je suggère de passer par their tutorials ou aller chercher un decent book sur le sujet.
Pour le mélange de table jQuery + JSON + Servlet + HTML, j'ai posté des réponses similaires avec des exemples de code avant here et here comment remplir une table avec l'aide de Google Gson et Servlet, vous trouverez peut-être utile. Je copypaste de l'un d'eux.
Voici les servlets et Javabean:
public class JsonServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<Data> list = dataDAO.list();
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(new Gson().toJson(list));
}
}
public class Data {
private Long id;
private String name;
private Integer value;
// Add/generate getters/setters.
}
Le JsonServlet
(vous pouvez nommer tout ce que vous voulez, c'est juste un exemple de base) devrait être mis en correspondance dans web.xml
sur un connu url-pattern
, utilisons /json
dans cet exemple. La classe Data
représente juste une ligne de votre tableau HTML (et la table de base de données).
Maintenant, voici comment vous pouvez charger une table avec l'aide de jQuery.getJSON:
$.getJSON("http://example.com/json", function(list) {
var table = $('#tableid');
$.each(list, function(index, data) {
$('<tr>').appendTo(table)
.append($('<td>').text(data.id))
.append($('<td>').text(data.name))
.append($('<td>').text(data.value));
});
});
Le tableid
bien sûr désigne le id
de l'élément HTML <table>
en question.
<table id="tableId"></table>
Cela devrait l'être. Après tout c'est assez simple, crois-moi. Bonne chance.
Pouvez-vous montrer la structure de votre Json? Je suppose que vous récupérez un 'tableau' d'objets? – Tejs