Wie gebe ich Informationen von einem Servlet an eine JSP-Seite weiter?

8

Ist es möglich, ein Servlet zu haben, das ein Objekt enthält (in diesem Fall eine ArrayList), das dann eine jsp-Seite anzeigt und dieses Objekt an die jsp-Seite übergibt? In diesem Fall enthält die ArrayList Datenbankergebnisse, die ich durchlaufen und die Ergebnisse auf der JSP-Seite anzeigen möchte.

Ich benutze kein MVC-Framework, ist es möglich, dies mit der grundlegenden Servlet / JSP-Architektur zu tun.

    
Ankur 14.02.2010, 14:37
quelle

4 Antworten

10

Ja.

  1. im Servlet-Aufruf request.setAttribute("result", yourArrayList);
  2. dann weiter zum jsp:

    %Vor%
  3. mit JSTL, in der Jsp:

    %Vor%

Wenn Sie JSTL nicht verwenden möchten (aber ich empfehle es), können Sie den Wert auch mit request.getAttribute("result") in der JSP abrufen.

Alternativ, aber nicht empfohlen, können Sie stattdessen request.getSession().setAttribute(..) verwenden, wenn Sie redirect() anstatt forward() möchten.

    
Bozho 14.02.2010, 14:47
quelle
2

Sie können es mit request.setAttribute ("myobj", myObj); siehe Javadoc

    
Igor Artamonov 14.02.2010 14:45
quelle
2

Wenn Sie versuchen, eine Art "Komponente" zu erstellen, ist es besser, die JSP-Seite in ein benutzerdefiniertes Tag zu konvertieren. Hier ist ein ausgezeichneter Artikel dazu: Ссылка

    
Alexei Osipov 28.10.2010 02:31
quelle
2

Sie können Objekte an jsp übergeben, indem Sie sie in die Anfrage einbetten.

request.setAttribute("object", object);

und innerhalb der jsp:

request.getAttribute("object");

    
kgrad 14.02.2010 14:45
quelle