0
這是它創建了一個多維的HashMap我的Java代碼:JSTL循環通過多維的HashMap
HashMap<String, HashMap<String, String>> data = new HashMap<String, HashMap<String, String>>();
for (App app : apps) {
String randomVar = "";
data.put(String.valueOf(app.getId()), new HashMap<String, String>());
data.get(String.valueOf(app.getId())).put("name", app.getName());
data.get(String.valueOf(app.getId())).put("info", randomVar);
}
這是我.jsp
文件:
<c:forEach items="${data}" var="items">
<c:forEach items="${items}" var="item">
<div class="col-md-6">
<div class="overview">
<a href="/goto/${items.key}" class="minimal" title="Switch to: ${item.name}">
${item.randomVar}
<span>${item.name}</span>
</a>
</div>
</div>
</c:forEach>
</c:forEach>
不幸的是,我不能在循環jsp文件的工作。問題在於第二個循環。我無法達到這些變數。無論我嘗試如何,我收到的錯誤如Don't know how to iterate over supplied 'items' in <forEach>
或items.name
不存在等等。我怎樣才能正確地循環哈希映射?
這給了我這個錯誤:'javax.el.PropertyNotFoundException:Property 'name'not found on type java.util.HashMap $ Node' – Jordy
@Jordy是的,它也是'$ {item.key}'而不是'$ {item.name}'和'$ {item.value.name}'和'$ {item.value.info}' –
@Jordy no,'$ {item.key}'將會有'name'和' info','$ {item.value}'會有app.getName()和randomVar(當然,'$ {item.name}'和'$ {item.randomVar}'不存在)。 –