当前位置 : 主页 > 编程语言 > java >

如果我传递bean,如何访问jsp中的数组列表

来源:互联网 收集:自由互联 发布时间:2021-06-25
我是JSTL的新手.我如何使用JSTL c:foreach如果我通过下面的示例bean,请在jsp内部 class B{ private String value=""; private ArrayList arrayVals; public String getvalue(){ return value; } public String getarrayVals(){ ret
我是JSTL的新手.我如何使用JSTL< c:foreach>如果我通过下面的示例bean,请在jsp内部

class B{
    private String value="";
    private ArrayList arrayVals;
    public String getvalue(){
        return value;
    }
    public String getarrayVals(){
        return arrayVals;
    }
}

我只会通过Bean“B”.我尝试下面,但jsp没有编译.请帮我.

<c:forEach items="${B.getarrayVals}" var="book"> 
    <c:out value="{book.title}"/> 
</c:forEach>
首先,getarrayVals()应该拼写为getArrayVals(),它应该返回一个List,而不是一个String.

现在假设servlet或action设置类型B的属性“b”,如下所示:

request.setAttribute("b", theBInstance);

然后转发到JSP,您可以像下面这样访问属性“b”中的列表:

${b.arrayVals}

您必须通过请求属性的名称而不是其类名来引用B实例.如果将属性命名为foo,则必须使用${foo.arrayVals}.
这将只是打印到列表的toString.如果要获取列表索引3处的元素,可以使用

${b.arrayVals[3]}

如果要迭代列表元素,请使用c:forEach构造:

<c:forEach items="${b.arrayVals}" var="element">
    The element value is ${element} <br/>
</c:forEach>
网友评论