我的程序从输入中接收电子邮件,并使用hadibeenpwned API向用户显示从该电子邮件中发现的所有违规行为。
我想知道如何获取forEach
循环以正确填充表格。当前,它只是将每个项目填充到一个表行中,而表标题位于数据下方。我希望标题位于最上面,并且每个违反行为都位于单独的表行中。
这是我的.jsp表单,其中显示了表格和forEach
:
<table class="table">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Breach</th>
</tr>
</thead>
<tbody>
<c:forEach var="breach" items="${breaches}" varStatus="status">
<tr>
<th scope="row">${status.count}</th>
<td><p>${breach}</p></td>
</tr>
</c:forEach>
</tbody>
</table>
这是我的servlet,在这里我得到发现的违规的ArrayList:
String json = callPwnedApi(email);
if (json.startsWith("{") || json.startsWith("[")) {
Gson gson = new Gson();
ArrayList<Breach> breaches = gson.fromJson(json, new TypeToken<ArrayList<Breach>>(){}.getType());
if (!breaches.isEmpty() && breaches.size() > 0) {
request.setAttribute("breaches", breaches);
}
}
答案 0 :(得分:0)
运行此代码时会看到什么错误或结果? Here是一个教程,其中详细介绍了JSTL的用法。如此处所述,我认为您需要在JSTL表达式中将if (x < 0 || x >= 3 || y < 0 || y >= 3||arr[x][y] != 2) {
return;
}
限定为breaches
。
答案 1 :(得分:0)
因此,对于JSTL来说,我犯了一个非常简单的错误!
我不知道自己需要将JSTL库添加到我的项目中,而且还需要将此行添加到我的.jsp
页面中:
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
因此,这样做之后,我的桌子就可以完美地工作了!希望这最终可以帮助JSTL新手!