Ответ 1
Вот так:
<c:forEach var="entry" items="${myMap}">
Key: <c:out value="${entry.key}"/>
Value: <c:out value="${entry.value}"/>
</c:forEach>
Я ищу, чтобы JSTL-цикл прошел через Map<String, String>
и выводил значение ключа и его значение.
Например, у меня есть Map<String, String>
, который может иметь любое количество записей, я хотел бы пропустить эту карту с помощью JSTL и вывести как ключ, так и его значение.
Я знаю, как получить доступ к значению с помощью ключа ${myMap['keystring']}
, но как мне получить доступ к ключу?
Вот так:
<c:forEach var="entry" items="${myMap}">
Key: <c:out value="${entry.key}"/>
Value: <c:out value="${entry.value}"/>
</c:forEach>
Вы можете прокручивать хеш-карту, подобную этой
<%
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>
Для большей функциональности JSTL смотрите здесь