gpt4 book ai didi

jsf - 如何在JSF页面的EL表达式中按索引显示ArrayList的元素

转载 作者:行者123 更新时间:2023-12-04 16:20:36 30 4
gpt4 key购买 nike

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

最佳答案

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

@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)}

也可以看看:
  • Our EL wiki page
  • Invoke direct methods or methods with arguments / variables / parameters in EL


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

    <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>

    也可以看看:
  • How iterate over List<T> and render each item in JSF Facelets
  • 关于jsf - 如何在JSF页面的EL表达式中按索引显示ArrayList的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9655129/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com