Loop through a Map with JSTL [duplicate]
I'm looking to have JSTL loop through a Map<String, String>
and output the value of the key and it's value.
For example I have a Map<String, String>
which can have any number of entries, i'd like to loop through this map using JSTL and output both the key and it's value.
I know how to access the value using the key, ${myMap['keystring']}
, but how do I access the key?
Solution 1:
Like this:
<c:forEach var="entry" items="${myMap}">
Key: <c:out value="${entry.key}"/>
Value: <c:out value="${entry.value}"/>
</c:forEach>
Solution 2:
You can loop through a hash map like this
<%
ArrayList list = new ArrayList();
TreeMap itemList=new TreeMap();
itemList.put("test", "test");
list.add(itemList);
pageContext.setAttribute("itemList", list);
%>
<c:forEach items="${itemList}" var="itemrow">
<input type="text" value="<c:out value='${itemrow.test}'/>"/>
</c:forEach>
For more JSTL functionality look here