时间:2021-05-19
JavaWeb 简单分页的实现:
这次主要是讲解一下通过登录后对得到的数据进行分页,首先我们新建一个登录页面login.jsp,因为我们主要学习一下分页,所以登录验证的部分不再阐述,主要代码如下:
<form action="pageServlet"> 用户名:<input type="text" name="username"><br> 密 码:<input type="text" name="password"><br> <input type="submit" value="提交"> </form>首先建立实体类User.java并添加get和set方法:
public class User { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }我们可以看到form表单是提交到pageServlet中,所以我们新建一个PageServlet,并在Servlet中获取到数据,同时做一些分页的准备,具体含义可以参照注释理解,PageServlet代码:
public class PageServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List<User> list = new ArrayList<User>(); // 在这里我不再连接数据库而是用虚拟的数据进行测试效果,小伙伴可以连接数据库查询到之后返回一个list for (int i = 1; i < 7; i++) { User user1 = new User(); user1.setUsername("第" + i + "个用户名"); user1.setPassword("第" + i + "密码"); list.add(user1); } HttpSession session = request.getSession(); // 将数据存到session中以便于在前台获取 session.setAttribute("userList", list); //获取当前页的页数并转为int类型,最终将数据存到session中 int pageNos; if (request.getParameter("pageNos") == null || Integer.parseInt(request.getParameter("pageNos")) < 1) { pageNos = 1; } else { pageNos = Integer.parseInt(request.getParameter("pageNos")); } session.setAttribute("pageNos", pageNos); // 定义总页数并存到session中 int countPage = 3; // 在实际开发中我们的总页数可以根据sql语句得到查询到的总条数,然后用总条数除每页的条数得到总页数 session.setAttribute("countPage", countPage); request.getRequestDispatcher("index.jsp").forward(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }}在上述代码中我们最终将转发到index.jsp页面,此时我们所有的数据都将显示在index.jsp中,用JSTL和EL表达式获取得到,index.jsp主要代码如下:
<body> <c:forEach items="${userList}" var="user" begin="${(pageNos-1)*2 }" end="${pageNos*2-1}"> <center> <div>${user.username}</div> </center> <center> <div>${user.password}</div> </center> </c:forEach> <center> <c:if test="${pageNos>1 }"><a href="pageServlet?pageNos=1" >首页</a><a href="pageServlet?pageNos=${pageNos-1 }">上一页</a></c:if><c:if test="${pageNos <countPage }"><a href="pageServlet?pageNos=${pageNos+1 }">下一页</a><a href="pageServlet?pageNos=${countPage }">末页</a></c:if></center><form action="pageServlet"><h4 align="center">共${countPage}页 <input type="text" value="${pageNos}" name="pageNos" size="1">页<input type="submit" value="go"></h4></form> </body>第二行中我们用<c:forEach >对session.setAttribute();中的内容进行获取。注意,这里我默认是每页两条数据,所以是(pageNos-1)*2,如果每页N条数据则需将2改为N,当然N也可以从后台Servlet中获取得到。
同时,因为我们在index.jsp中用了JSTL表达式,所以记得要导入引用:
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
到这里我们就完成了一个简单的分页,快去试试吧。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
这篇文章主要介绍了JavaWeb分页的实现代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下分页的分类分
PHP+AJAX无刷新分页实现代码详解,最近在看ajax教程,就想写个简单入门的PHP+AJAX无刷新分页,我们依据ajax开发框架,代码如下:varhttp_
本文介绍了laravel手动创建数组分页的实现代码,分享给大家,具体如下:laravel分页功能:有几种方法可以对数据进行分页。最简单的是在[查询语句构造器]或
本文实例为大家分享了JQuery的Pager分页器的具体实现代码,供大家参考,具体内容如下效果图:代码:html代码:分页器functiondoChangePa
这篇文章主要介绍了PythonDjango简单分页的实现代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考