JSTL 的 forEach怎么用

ashui811 2009-04-13 05:09:12
我从session中得到得到一个Map key是id,vlaue是一个javabean对象
我用Iterator迭代这个Map的key 然后得到value也就是javabean对象,然后使用javabean对象的方法,大约是这样子的
<% Map shoppingcartMap=session.getAtrribute("shoppingcartMap")
Iterator it=shoppingcartMap.keyset().iterator
while(it.hasnext()){
通过it.next()得到id,然后get(id)得到对象
在下面的表单中<%=javabean对象.属性%>
%>
我想问下 如果 我想用jstl+el把上面这些代码去掉 该如何表示,我知道<c:foreach>是循环用的,但是他的value是个javabean 而且while怎么用jstl标签表示?后面的那个<%=%>我知道 可以用el表达式$(javabean.属性}当然也要将javabean对象放入session中,请帮忙把上面这段代码简化一下 最后不要有<%%>
...全文
209 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
guolimin1118 2009-04-13
  • 打赏
  • 举报
回复

<c:forEach items="${mapvalue}" var="v">
${v.key }=${v.value }<br>
</c:forEach>
llcmb 2009-04-13
  • 打赏
  • 举报
回复
<c:forEach var="element" item="${sessionScope.shoppingcartMap}">
${element.key} ${element.value}
</c:forEach>
一楼的应该是item吧,不是value
liangcaijiu 2009-04-13
  • 打赏
  • 举报
回复
同意上面所说,如果element是引用类型,输出应该是这样了${element.objName.property}
valen_jia 2009-04-13
  • 打赏
  • 举报
回复
好像是这样的吧
<c:forEach var="element" items="${sessionScope.shoppingcartMap}">
${element.key} ${element.value}
</c:forEach>
${element.key}获取id;
${element.value}获取你的那个javaBean
然后你再.属性就行了
台城柳月 2009-04-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fosjos 的回复:]
<c:forEach var="element" value="${sessionScope.shoppingcartMap}">
${element.key} ${element.value}
</c:forEach>
[/Quote]

确定是这样
这里var="element"实际是遍历这个Map,
也就是Map.Entry的集合,
element.key就是调用Map.Entry的getKey()方法
element.value就是调用Map.Entry的getValue()方法
这是可以获得想要的值的
fosjos 2009-04-13
  • 打赏
  • 举报
回复
<c:forEach var="element" value="${sessionScope.shoppingcartMap}">
${element.key} ${element.value}
</c:forEach>

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧