Domanda

Ho un vettore di bean che contiene informazioni che voglio visualizzare nella mia pagina jsp. Attualmente sto solo usando espressioni java standard per visualizzare questo, voglio esaminare l'uso di jstl per separare le preoccupazioni. È possibile, e come? Ho cercato su Google ma non riesco a trovare nulla.

È stato utile?

Soluzione

Penso che quello che stai cercando sia < c: foreach > tag.

ad esempio, la stampa del valore della proprietà myInt sulle istanze di MyClass (definita di seguito):

<c:foreach items="${vectors name}" var="pos" >
       <!-- print the value of myInt for each position of the array. 
            Method getMyInt() must exist in pos object.-->
       <c:out value="${pos.myInt}"/>

       <!-- print the value of myInt for each composed instance.
            Method getRelatedInstance() must exist in pos object.  -->
       <c:out value="${pos.relatedInstance.myInt}"/>
</c:foreach> 

dove nome vettoriale è il nome del vettore, ad esempio, dopo aver eseguito un

Supponi di avere una classe myClass.

public class MyClass{
   private MyClass relatedInstance;     
   //some members and methods

   public int getMyInt(){
     //return something
   }

   public MyClass getRelatedInstance(){
     return this.relatedInstance;
}

List<myClass> my_vector = getFilledList();
request.setAttribute("vectors name",my_vector)

Altri suggerimenti

Per spendere nell'esempio di Tom, ecco qualcosa di più concreto:

<c:foreach items="${myList}" var="myItem">
  <c:out value="${myItem.someProperty}"/>
</c:foreach>

Where " myList " è un attributo di richiesta che contiene il tuo vettore.

Un errore comune è dimenticare $ {} intorno a $ {myList} - in questo caso, JSTL non genererà un errore, genererà semplicemente un elenco per te con un singolo elemento, la stringa quot; myList <> quot;!.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top