9

HashMap我在 JSP 页面上有一个对象。

HashMap<Integer,Gift_product> gift_hm = new HashMap<Integer,Gift_product>();
gift_hm.put(17,new Gift_product("doll",67));

现在我需要迭代它并在 JSP 上显示内容。该类Gift_product包含两个字段:nameprice

JSP 输出应该是

serial no.           product name     price
17                    Doll            67

我怎样才能实现它?

4

4 回答 4

12

查看 struts<logic:iterate>标签。遍历 HashMap 时,每个条目都是一个java.util.Map.Entry, 来获取键(在本例中为序列号)和值(Gift_product 对象),使用keyvalue属性如下:

首先将 HashSet 设置为您的操作类中的属性,例如request.setAttribute("gift_hm", gift_hm);,然后在 jsp 中:

<logic:iterate id="mapEntry" name="gift_hm">
  <bean:define id="gift" name="mapEntry" property="value">
  <tr>
    <td><bean:write name="mapEntry" property="key"></td>
    <td><bean:write name="gift" property="productName"></td>
    <td><bean:write name="gift" property="price"></td>
  </tr>
</logic:iterate>
于 2010-06-15T10:59:07.880 回答
5

这个对我有用(struts2):

<s:iterator value="giftMap" var="giftMapElement">
    <s:set var="giftKey" value="#giftMapElement.key"/>
    <s:set var="giftValue" value="#giftMapElement.value"/>
    <tr>
        <td><s:property value="#giftKey"/></td>
        <td><s:property value="#giftValue.productName"/></td>
        <td><s:property value="#giftValue.price"/></td>
    </tr>
</s:iterator> 
于 2013-09-04T12:27:53.050 回答
1
Solution
-----------
<s:iterator value="map">
  <h3><s:property value="key" /></h3>
  <table>
  <s:iterator value="value">
    <tr><td><s:property /></td></tr>
  </s:iterator>
  </table>
</s:iterator>
于 2013-07-29T09:30:01.137 回答
0
<logic:iterate name="FormName" property="formProperty"
                            id="list" indexId="sno">
                    <tr>
                                <td><bean:write name="list" property="value.giftproductVariable" /></td>
                                <td><bean:write name="list" property="value.giftproductVariable" /></td>

                            </tr>
                        </logic:iterate>
于 2018-04-23T10:36:27.497 回答