Domanda

Ho una lista di oggetti, prodotti da APP q.getResultList().

Mi piacerebbe utilizzarlo in un menu a discesa, ma tag "opzione" Stripes posso accettare List, solo Collection, Enum and Map.

Im nuovo a Java, che il motivo per cui forse il List può tradotto a ciascuno di loro, ma non so come posso risolvere questo problema.

(Stripes selezionare, l'opzione-map, -enumeration, -Collection può costruire un menu a discesa da precedenti strutture oggetto di input menzionato)

È stato utile?

Soluzione

La documentazione del opzioni della collezione tag dice:

  

Scrive un insieme di tag al <option value="foo">bar</option>   pagina in base ai contenuti di un   Collection, Iterable o Array. Ogni   elemento della collezione è   rappresentato da un singolo tag opzione   la pagina. Utilizza l'etichetta e il valore   attributi del tag di nominare il   proprietà degli oggetti nel   Collection che dovrebbe essere utilizzato per   generare il corpo del l'opzione HTML   tag e l'attributo valore del   opzione etichetta HTML, rispettivamente. Se   uno (o entrambi) dell'etichetta o valore   sono omessi dell'elemento   si saranno utilizzati per la   etichetta / valore invece - questo è fatto per   collezioni di supporto di tipi semplici   come stringhe e numeri.

     

es. una dichiarazione che sembra tag   come:

<stripes:options-collection collection="${cats}" value="catId" label="name"/>
     

causerebbe il contenitore per cercare   un Collection chiamato "gatti" in tutto il   diversi scopi JSP e impostare sulla   etichetta. Il tag dovrebbe quindi procedere al   iterare che la raccolta   chiamando getCatId() e getName() su   ogni gatto per produrre tag opzione HTML.

Un java.util.List essere Collection , basta passare all'attributo collection del tag menzionato.

Altri suggerimenti

Un oggetto List è un oggetto Collection: l'interfaccia del List estende quella di Collection. È possibile utilizzare un oggetto List, come ad esempio ArrayList o LinkedList in tutti i luoghi in cui è necessario un Collection.

Il tipo Enum è una sorta di elenco statico, dichiarando una classe come un'enumerazione, in questo modo:

public enum MyEnum {
    FirstOption, SecondOption, ThirdOption;
}

Il tipo Map è un insieme associativo; per esempio. il Hashtable, HashMap e TreeMap sono tutte le istanze di un Map.

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