JSP中的分页查询

实现分页步骤确定每页显示的数据量确定分页显示所需的总页数编写sql查询语句,实现数据查询1)limit分页公式(1)limit分页公式:currentPage是当前第几页;pageSize是一页多少条记录limit currentPage-1)*pageSize,pageSize(2)用的地方:sql语句中select * from student limit(curPage-1)*pageSize,pageSize;2)总页数公式(1)总页数公式:totalRecord
摘要由CSDN通过智能技术生成

实现分页

步骤

确定每页显示的数据量

确定分页显示所需的总页数

编写sql查询语句,实现数据查询

1)limit分页公式
(1)limit分页公式:currentPage是当前第几页;pageSize是一页多少条记录
limit currentPage-1)*pageSize,pageSize
(2)用的地方:sql语句中
select * from student limit(curPage-1)*pageSize,pageSize;

2)总页数公式
(1)总页数公式:totalRecord是总记录数;pageSize是一页分多少条记录
int totalPageNum = (totalRecord +pageSize - 1) / pageSize;
(3)查询总条数:totalRecord是总记录数
SELECT COUNT(*) FROM tablename

示例

<%@page import="kgc.pojo.Student"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
	//javaBean
<jsp:useBean id="studentService" class="kgc.service.Studen
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的 JSP 分页查询代码示例: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.sql.*" %> <% // 连接数据库 String url = "jdbc:mysql://localhost:3306/test"; String username = "root"; String password = "123456"; Connection conn = DriverManager.getConnection(url, username, password); // 获取当前页码和每页显示的记录数 int currentPage = Integer.parseInt(request.getParameter("currentPage")); int pageSize = Integer.parseInt(request.getParameter("pageSize")); // 计算起始记录的索引 int startIndex = (currentPage - 1) * pageSize; // 查询总记录数 String countSql = "SELECT COUNT(*) FROM user"; PreparedStatement countStmt = conn.prepareStatement(countSql); ResultSet countRs = countStmt.executeQuery(); countRs.next(); int totalCount = countRs.getInt(1); // 查询当前页的记录 String dataSql = "SELECT * FROM user LIMIT ?, ?"; PreparedStatement dataStmt = conn.prepareStatement(dataSql); dataStmt.setInt(1, startIndex); dataStmt.setInt(2, pageSize); ResultSet dataRs = dataStmt.executeQuery(); // 输出查询结果 out.println("<table>"); out.println("<tr><th>ID</th><th>姓名</th><th>年龄</th></tr>"); while (dataRs.next()) { out.println("<tr>"); out.println("<td>" + dataRs.getInt("id") + "</td>"); out.println("<td>" + dataRs.getString("name") + "</td>"); out.println("<td>" + dataRs.getInt("age") + "</td>"); out.println("</tr>"); } out.println("</table>"); // 输出分页导航 int totalPage = (int) Math.ceil((double) totalCount / pageSize); out.println("<div>"); out.println("<a href='?currentPage=1&pageSize=" + pageSize + "'>首页</a>"); if (currentPage > 1) { out.println("<a href='?currentPage=" + (currentPage - 1) + "&pageSize=" + pageSize + "'>上一页</a>"); } if (currentPage < totalPage) { out.println("<a href='?currentPage=" + (currentPage + 1) + "&pageSize=" + pageSize + "'>下一页</a>"); } out.println("<a href='?currentPage=" + totalPage + "&pageSize=" + pageSize + "'>末页</a>"); out.println("</div>"); // 关闭数据库连接 dataRs.close(); dataStmt.close(); countRs.close(); countStmt.close(); conn.close(); %>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值