JSP页面:
<body>
<form name="myform" method="post" action="newstypeservlet?op=batchDelete">
<table border="1">
<tr>
<th>编号</th>
<th>类型名</th>
<th>编辑</th>
<th>删除</th>
</tr>
<c:forEach items="${requestScope.newsTypeList }" var="newsType" varStatus="status">
<tr style="background-color: ${status.index%2==0?'red':'green' } ">
<td>
<input type="checkbox" name="ids" value="${newsType.id }"/>
${newsType.id }
</td>
<td>${newsType.typeName }</td>
<td><a href="newstypeservlet?op=toEdit&id=${newsType.id }">编辑</a></td>
<td><a href="newstypeservlet?op=delete&id=${newsType.id }">删除</a></td>
</tr>
</c:forEach>
<tr>
<td colspan="4" >
<input type="button" value="批量删除" onclick="checkSelected()"/>
</td>
</tr>
</table>
</form>
</body>
Servlet代码:
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// System.out.println("进入sevlet");
request.setCharacterEncoding("UTF-8");// 解决Post提交时的乱码问题
String op = request.getParameter("op");// 注意:此处的JSP页面不放在根目录下,Servlet就无法接收到页面传来的数据,因为web.xml配置信息无法覆盖
if ("add".equals(op)) {
addNewsType(request, response);
} else if ("list".equals(op)) {
listNewsType(request, response);
} else if ("batchDelete".equals(op)) {
batchDelete(request, response);
} else if ("delete".equals(op)) {
deleteById(request, response);
}
}
// 新闻列表
private void listNewsType(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
NewsTypeService newsTypeService = new NewsTypeService();
List<NewsType> newsTypeList = newsTypeService.findAll();
request.setAttribute("newsTypeList", newsTypeList);
request.getRequestDispatcher("../listNewsType.jsp").forward(request,
response);
}
private void deleteById(HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
PrintWriter out = response.getWriter();
String idStr = request.getParameter("id");
if (idStr == null || "".equals(idStr)) {
out.write("<script>alert('密码不能为空');history.back();</script>");
return;
}
int id = Integer.parseInt(idStr);
NewsTypeService newsTypeService = new NewsTypeService();
newsTypeService.delete(id);
// 删除数据后,返回列表
listNewsType(request, response);
}
private void batchDelete(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String[] ids = request.getParameterValues("ids");
NewsTypeService newsTypeService = new NewsTypeService();
newsTypeService.batchDelete(ids);
// 删除数据后,返回列表
listNewsType(request, response);
}