【问题标题】:How to display elements of ArrayList by index in EL expression in JSF page如何在JSF页面的EL表达式中按索引显示ArrayList的元素
【发布时间】:2012-03-11 12:58:51
【问题描述】:

我想在 JSF 页面中显示 java 数组列表。我从数据库生成了arraylist。现在我想通过按索引号调用列表元素索引来将列表显示到 JSF 页面中。是否可以直接从JSF页面中的EL表达式向bean方法传递参数并显示?

【问题讨论】:

    标签: jsf arraylist el


    【解决方案1】:

    您可以使用大括号符号[] 通过特定索引访问列表元素。

    @ManagedBean
    @RequestScoped
    public class Bean {
    
        private List<String> list;
    
        @PostConstruct
        public void init() {
            list = Arrays.asList("one", "two", "three");
        }
    
        public List<String> getList() {
            return list;
        }
    
    }
    
    #{bean.list[0]}
    <br />
    #{bean.list[1]}
    <br />
    #{bean.list[2]}
    

    至于参数传递,当然是可以的。 EL 2.2(或 JBoss EL,当您仍在使用 EL 2.1 时)支持使用参数调用 bean 方法。

    #{bean.doSomething(foo, bar)}
    

    另见:


    然而我想知道是否只使用一个迭代列表中所有元素的组件不是更容易,例如&lt;ui:repeat&gt;&lt;h:dataTable&gt;,这样您就不需要事先知道大小,也不需要知道通过索引获取每个单独的项目。例如

    <ui:repeat value="#{bean.list}" var="item">
        #{item}<br/>
    </ui:repeat>
    

    <h:dataTable value="#{bean.list}" var="item">
        <h:column>#{item}</h:column>
    </h:dataTable>
    

    另见:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 2016-11-30
      • 2016-08-23
      • 1970-01-01
      • 2016-12-06
      • 2012-04-01
      • 1970-01-01
      相关资源
      最近更新 更多