【问题标题】:How can I use List of object with Stripes "option" tag?如何使用带有条纹“选项”标签的对象列表?
【发布时间】:2010-03-27 21:46:36
【问题描述】:

我有一个对象列表,由 JPA q.getResultList() 生成。

我想在下拉列表中使用它,但 Stripes 的“选项”标签不能接受 List,只能接受 CollectionEnum and Map

我是 Java 新手,为什么 List 可以翻译成每个人,但我不知道如何解决这个问题。

(Stripes select,option-map,-enumeration,-collection 可以从前面提到的输入对象结构中建立一个下拉列表)

【问题讨论】:

    标签: java stripes


    【解决方案1】:

    options-collection 标签的文档说:

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

    例如看起来的标签声明 喜欢:

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

    会导致容器寻找 一个叫“猫”的Collection穿过 各种 JSP 范围并将其设置在 标签。然后标签将继续 遍历该集合 打电话给getCatId()getName() 每只猫生成 HTML 选项标签。

    java.util.ListCollection,只需将其传递给上述标记的 collection 属性即可。

    【讨论】:

    • 感谢您的快速回复,我已经尝试了一个列表(类似于帮助和您的示例),它对我不起作用。但我敢肯定,它做错了。感谢快速回复和努力。
    • @cscsaba242 不客气。但是没有看到你的代码,恐怕无法提供更多帮助。
    【解决方案2】:

    List 对象是Collection 对象:List 接口扩展了Collection 的接口。您可以在需要Collection 的所有地方使用List 对象,例如ArrayListLinkedList

    Enum 类型是一种静态列表,通过将类声明为枚举,如下所示:

    public enum MyEnum {
        FirstOption, SecondOption, ThirdOption;
    }
    

    Map 类型是一个关联集;例如HashtableHashMapTreeMap 都是 Map 的实例。

    【讨论】:

    • 感谢您的快速回复,我自然使用了对象列表进行探测。它对我不起作用。我相信你的经验,所以错误在我这边。(使用列表有问题)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-23
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多