I am currently facing some difficulties with Struts2 and the s:iterate tag.
I want to display a label, which is the key in the HashMap, followed by a table (the value in the HashMap) containing every elements in the ArrayList, for each elements in the HashMap.
For example,
label ---------- | test1 | ---------- | test2 | ---------- label2 ---------- | test1 | ---------- | test2 | ----------
I saw a lot of example for an HashMap but didn't find one for my case.
How can I do this ?
Thanks,
In Java HashMap, we can iterate through its keys, values, and key/value mappings.
Iterating over Map. Entry<K, V>>) of the mappings contained in this map. So we can iterate over key-value pair using getKey() and getValue() methods of Map. Entry<K, V>. This method is most common and should be used if you need both map keys and values in the loop.
<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>
The iterator of a map is Map.Entry which gets put on the value stack and has two accessors, getKey() and getValue(). Iterate over Entry printing the key, then iterate over the values printing the value. (The list item gets put on top of the value stack so s:property just prints the top.)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With