现有一JavaBean,其中有一个获得所有食品列表集合的方法:public Map getAllFoodList(int pageItem, int currPage),返回值为Map类型,现要在index.jsp页面中用JSTL遍历这个集合,并显示所有食品的信息,如何实现?

解决方案 »

  1.   

    直接用struts的标签啊---map就是你map的名字
    <bean:write name="map" value="key"/>
    <bean:write name="map" value="value"/>
      

  2.   


    <% request.setAttribute("map",map);
      %>
      <c:forEach items="${map}" var="mymap" >
      <c:out value="${mymap.key}" />
      <c:out value="${mymap.value}" />
      </c:forEach>
      <c:forEach items="${map}" var="mymap">
      <c:if test="${mymap.key=='a'}">
      <c:out value="${mymap.value}"/>
      </c:if>
      </c:forEach> 
      

  3.   

    myMap现在是个对象,怎么遍历其中封装的数据?
      

  4.   

    你自己都这样想了,你不会进一步,list.add(map)吗?
      

  5.   

    List<Map<XXX,xxx>> list = new ArrayList<Map<XXX,xxx>>();
    认真看了你的代码,你既然返回的是一个map,你何来的遍历?
    可能你的那个方法就是错的,从数据库里面怎么可能直接获得map呢
    map一般是取得了list之后再对值进行处理的
      

  6.   

    怎么都用jsp呢,在html页面中直接用velocity语法不是更加方便啊
      

  7.   

    myMap中存的是个实体对象,怎么获得该实体对象的每个属性?
      

  8.   

    <c:forEach items="${datas}" var="item">   
       ${item.key}  ${item.value}
       
    </c:forEach> 
      

  9.   

    Map<String, Object>:     <c:forEachitems="${map}" var="mymap"> 
          <c:outvalue="${mymap.key}"/> 
          <c:outvalue="${mymap.value.name}"/> 
         </c:forEach> 
      

  10.   

    EL表达式支持点导航,即用"."来访问对象中的属性值。就像三楼所述的,再稍微修改下就行:
    ${map.value.属性名}
    试试看吧!
      

  11.   


     <% request.setAttribute("map",map); 
      %> 
       <c:forEach items="${map}" var="mymap"> 
       <c:outvalue="${mymap.对象.key}"/> 
       <c:outvalue="${mymap.对象.value}"/> 
       </c:forEach> 
       
     <% request.setAttribute("map",map); 
      %> 
       <c:forEach items="${map}" var="mymap"> 
       <c:outvalue="${mymap.对象.对象.key}"/> 
       <c:outvalue="${mymap.对象.对象.value}"/> 
       </c:forEach> 
       可以这样无限对象下去,可是不支持各楼都开窍了,楼主还迷茫呢?