我有对象的列表,通过JPA q.getResultList()制备。

我想在一个下拉使用它,但条纹“选项”标签不能接受列表中,只是CollectionEnum and Map

进出口新的Java中,为什么也许List可以转化为他们每个人,但我不知道我怎样才能解决这个问题。

(条纹选择,选项映射,-enumeration,-collection可以建立的下降来自先前提到的输入对象结构向下)

有帮助吗?

解决方案

选项收集的文档 标记表示:

  

写入一组<option value="foo">bar</option>标签到   根据内容页   CollectionIterableArray。每   集合中的元素是   由单个选项标记上表示的   这一页。使用标签和值   属性上的标签来命名   在所述对象的属性   Collection应该被用来   生成HTML选项的身体   标签和的价值属性   HTML标签选项分别。如果   任一个(或两者)的标签或值的   属性被省略的项目   本身将被用于   标签/值来代替 - 这样做是为了   简单类型的支持集合   像字符串和数字。

     

E.g。标签声明,看起来   像:

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

会导致容器外观为   一个Collection叫“猫”跨越   各种JSP范围和设置在   标签。然后,标签将继续   迭代通过集合   呼吁getCatId()getName()   每只猫以产生HTML的选项标签。

一个的 java.util.List 是一个的 Collection 下,只是将它传递给上述标签的属性collection

其他提示

一个List对象是Collection对象:所述List接口扩展了Collection的。您可以使用List对象,比如在你需要一个ArrayList所有地方LinkedListCollection

Enum类型是一种静态列表的,通过声明一个类作为枚举,像这样:

public enum MyEnum {
    FirstOption, SecondOption, ThirdOption;
}

Map类型是一个关联集;例如的HashtableHashMapTreeMapMap的所有实例。

scroll top