2016-06-10 14 views
0

Ich suche nach einer Möglichkeit, über eine Arraylist von Java-Beans in einer Jsp2-Seite zu iterieren.(JSP2-MVC) Wie man eine Arraylist der Java-Bohne iteriert?

Ich habe eine Bohne „Katalog“ mit einem Arraylist mit Bohnen „Artikeln“ und für jede Bohne

ich es mit: ${catalog.items}; Ich brauche jedes Element als <li></li> anzuzeigen.

Was ist die korrekte Art, diese Iteration im jsp2 MVC-Projekt ohne ein anderes älteres oder neueres Framework durchzuführen, nur JSP2 in Bezug auf MVC?

Antwort

1

Die Antwort oben nicht MVC respektieren

<li>---</li> 

im VUE geschrieben werden müssen und nicht im Modell (BEAN)

Ich glaube, Sie möchten, dass Ihre Liste in einer jsp Seite Architektur mit MVC anzuzeigen der richtige Weg ist:

1/eine Funktion hinzufügen, die eine Liste in der Bohne (Modell)

2/a Servlet zurück, die diese Bohne einer instanziiert d diese Funktion aufrufen und

diese Liste in Anforderung (Controller) eingestellt

3/der JSP-Seite desplay die Liste (view)

dies ist ein Beispiel: 1/Bean:

dieses Funtion hinzufügen:

public List<items> loadList() { 
    List<items> Mylist = new ArrayList<tests>(); 

    //Your code to fill the list 

    return Mylist; 

    } 

2/Servlet:

public class ExampleServlet extends HttpServlet { 


    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 


       catalog MyObject = new catalog(); 


     try { 
      List<items> list = MyObject.loadList(); 

     request.setAttribute("recolist", list); 

     RequestDispatcher view = request.getRequestDispatcher("My.jsp"); 
     view.forward(request, response); 


     } catch (Exception ex) { 
      System.out.println(ex.getMessage()); 
     } 


    }} 

3/JS P -My.jsp-: diesen Code auf Ihre Seite JSP hinzufügen

<c:forEach var="VAR" items="${recolist}"> 

<li>${VAR./*WHAT YOU WANT*/}</li>               
</c:forEach> 

Beachten Sie, dass VAR ist ein Artikel Objekt, das Sie jedes Attribut der Objekt Elemente zum Beispiel ID aufrufen, Name ...

0

Sie können eine Methode in der Bean-Klasse (Katalog) schreiben, genau wie:

public String getItemsList() 
{ 
    String printlist = ""; 
    for(item i:items)//object you want to loop 
    { 
     printlist = "<li>xxxxxxxxxx</li>"; 
     ........ 
    } 
    return printlist; 
} 

Dann in Ihrer jsp Seite ${catalog.items}-${catalog.itemsList} ändern.

Ich hoffe, das hilft Ihnen.

+0

Ist es respektiert MVC? –

+0

Ich habe diesen Weg in meiner Universität über JSP MVC gelernt, ich denke, das ist der richtige Weg, es zu tun. –

+0

Im älteren JSP-Framework müssen wir und verwenden, um Bean-Objekte abzurufen. Verwenden Sie im JSP2-Framework einfach $ {xxxx.xxxx}. –

Verwandte Themen