Mein Problem: Ich sende eine Anfrage an ein Servlet von einer AJAX-Funktion in einer JSP.
Das Servlet verarbeitet die Daten und gibt ArrayList
zurück.
Meine Frage ist, wie man das ArrayList
in AJAX behandelt und es als Tabelle in derselben JSP anzeigt.
Der Code ist
%Vor%%Vor%
Erstens würde ich Ihnen empfehlen, etwas über die Wand zwischen JavaScript und JSP zu lernen. JS wird vollständig auf der Clientseite ausgeführt und JSP / Java wird vollständig auf der Serverseite ausgeführt. Sie laufen sicher nicht synchron, wie Sie zu denken scheinen. Um mehr zu erfahren, lesen Sie diesen Blog-Artikel .
%Vor%
Zweitens würde ich Ihnen empfehlen, eine bestehende, robuste, gründlich entwickelte, gut gepflegte JavaScript-Bibliothek mit ajaxischen Funktionen wie jQuery zu verwenden das AJAX-Rad neu erfinden und mit browserspezifischen Problemen / Problemen / Verhaltensweisen / Schmerzen kämpfen / kämpfen / sorgen. Ich würde auch empfehlen, JSON als Datenübertragungsformat zwischen Java Servlet auf dem Server und JavaScript auf dem Client zu verwenden. Auf der Java-Seite können Sie dazu die großartige Gson -Bibliothek verwenden.
Hier ist ein Kickoff-Beispiel mit allen erwähnten Techniken. Beginnen wir mit einem Servlet und einem JavaBean:
%Vor% Das JsonServlet
(Sie können es nennen, was Sie wollen, dies ist nur ein einfaches Beispiel) sollte in web.xml
auf ein bekanntes url-pattern
abgebildet werden, verwenden wir /json
in diesem Beispiel. Die Klasse Data
repräsentiert nur eine Zeile Ihrer HTML-Tabelle (und der Datenbanktabelle).
Nun können Sie eine Tabelle mithilfe von jQuery.getJSON laden:
%Vor% Das tableid
bezeichnet natürlich das id
des fraglichen <table>
-Elements.
Das sollte es sein. Schließlich ist es ziemlich einfach, glaube mir. Viel Glück.