您的位置:首页 > 其它

八十三

2020-07-06 22:19 381 查看

**分页

servlet**

public void showTeaccher(HttpServletRequest req, HttpServletResponse resp) throws Exception {
IAdminDao iad = new AdminImpl();
List list = iad.selectAllTeacher(); // 获得要显示的集合
String strNum = req.getParameter(“pageNum”); // 接受分页页面传递过来的页面数
int pageNum = 0 ; // 表示当前要显示的页面
int maxPage = 0; // 最大页
int pageCount = list.size(); // 得到查询出来的所有总数据的总数目

//  如果是第一次执行,就会接收不到数据
if (strNum == null){
strNum = "0";
}else {
//  接受到了用户惦记的第(pageNum)页
pageNum = Integer.parseInt(strNum);
}

// 计算要分多少页
if (pageCount%3 == 0){
maxPage = pageCount/3 ;
}else {
maxPage = pageCount/3 + 1;
}
req.setAttribute("maxPage",maxPage);
req.setAttribute("pageNum",pageNum);
req.setAttribute("list",list);
req.getRequestDispatcher("showTeacher.jsp").forward(req,resp);
}
**

jsp页面

**
教师列表

教师编号 教师姓名 教师密码

<c:forEach var=“n” items="list"varStatus="s"begin="{list}" varStatus="s" begin="list"varStatus="s"begin="{pageNum*3}" end="(pageNum+1)∗3−1"><tr><td>{(pageNum+1)*3-1}"> <tr> <td>(pageNum+1)∗3−1"><tr><td>{n.teacherId}
n.teacherName</td><td>{n.teacherName}</td> <td>n.teacherName</td><td>{n.teacherPassword}



</c:forEach >


首页
<c:if test="pageNum>0"><ahref="FenyeServlet?pageNum={pageNum>0}"> <a href="FenyeServlet?pageNum=pageNum>0"><ahref="FenyeServlet?pageNum={pageNum-1}">上一页
</c:if>
<c:if test="pageNum==0">上一页</c:if><c:iftest="{pageNum == 0}"> 上一页 </c:if> <c:if test="pageNum==0">上一页</c:if><c:iftest="{pageNum<maxPage-1}">
下一页
</c:if>
<c:if test="pageNum==maxPage−1">下一页</c:if><ahref="FenyeServlet?pageNum={pageNum == maxPage-1}"> 下一页 </c:if> <a href="FenyeServlet?pageNum=pageNum==maxPage−1">下一页</c:if><ahref="FenyeServlet?pageNum={maxPage-1}">尾页


首页序号为0,尾页序号为最大值,即集合的长度-1(list.size() - 1)
上一页序号为当前序号-1(前提是当前序号>0)
当当前序号为0时,上一页应不在有任何请求
下一页序号为当前序号+1(前提是当前序号<list.size() - 1)
当当前序号为(list.size() - 1)时。下一页应不再有任何请求
优缺点:逻辑简单,易书写
复用性差,再别的情形下使用可能需要修改大量代码

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: