pra*_* cs 5 jsp jstl javabeans
我是JSTL的新手.<c:foreach>如果我传递下面的示例bean,我如何在jsp中使用JSTL
class B{
private String value="";
private ArrayList arrayVals;
public String getvalue(){
return value;
}
public String getarrayVals(){
return arrayVals;
}
}
Run Code Online (Sandbox Code Playgroud)
我只会通过Bean"B".我尝试下面,但jsp没有编译.请帮我.
<c:forEach items="${B.getarrayVals}" var="book">
<c:out value="{book.title}"/>
</c:forEach>
Run Code Online (Sandbox Code Playgroud)
JB *_*zet 10
首先,getarrayVals()应该拼写getArrayVals(),它应该返回一个List,而不是一个String,显然.
现在假设servlet或action设置类型B的属性"b",如下所示:
request.setAttribute("b", theBInstance);
Run Code Online (Sandbox Code Playgroud)
然后转发到JSP,您可以像下面这样访问属性"b"中的列表:
${b.arrayVals}
Run Code Online (Sandbox Code Playgroud)
您必须通过请求属性的名称而不是其类名来引用B实例.如果将属性命名为foo,则必须使用${foo.arrayVals}.这将只是打印到列表的toString.如果要获取列表索引3处的元素,可以使用
${b.arrayVals[3]}
Run Code Online (Sandbox Code Playgroud)
如果要迭代列表元素,请使用c:forEach构造:
<c:forEach items="${b.arrayVals}" var="element">
The element value is ${element} <br/>
</c:forEach>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24039 次 |
| 最近记录: |