我正在尝试将列表作为参数发送到我想要显示的JSP文件中。 我的JSP文件名为showList.jsp。
创建了一个servlet,用于控制程序中的所有内容。当用户点击“显示列表”按钮时,将执行一些代码,此代码将打印出列表:
我的代码:
if (session.getAttribute("show") == "show") {
List opr = null;
try {
opr = func.showlist(opr);
for(int i = 0; i < opr.size(); i++){
System.out.println(opr.get(i));
}
} catch (Exception e) {
System.out.print("Error found, when trying to show list");
}
session.removeAttribute("administrator");
session.removeAttribute("show");
session.removeAttribute("create");
return;
}
在这里你可以看到它只是打印出我的arraylist(大小)中的内容。
更新代码:
List opr = null;
try {
opr = func.showlist(opr);
for(int i = 0; i < opr.size(); i++){
System.out.println(opr.get(i));
}
request.setAttribute("list", opr);
} catch (Exception e) {
System.out.print("Error found, when trying to show list");
}
session.removeAttribute("administrator");
session.removeAttribute("show");
getServletConfig().getServletContext().getRequestDispatcher("/getList.jsp");
}
答案 0 :(得分:1)
尝试使用 JSP JSTL 来迭代JSP中的列表
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
...
<c:if test="${not empty list}">
<table>
<c:forEach var="x" varStatus="status" items="${list}">
<tr>
<td><c:out value="${x}" /></td>
</tr>
</c:forEach>
</table>
</c:if>
只需使用ServletRequest#setAttribute()将数据设置为请求属性。
如需更多样本,请查看以下帖子: