JSP 分页显示技术
JSP分页显示技术
在使用数据库显示记录的过程中,一般记录都有很多条。但JDBC的规范对此却没有很好的解决方法。这就需要编程人员自己想办法解决。那么如何实现呢?
基本思路:
首先计算出从数据库中选取的记录总数,再根据每页需要显示的记录数确定共有多少页,显示时通过循环控制每页记录的数量。其中最重要的是我们要知道当前应该显示第几页,所以通过地址栏传参的方式实现,在页面跳转的时候获取该页码值,便可以实现数据的分页显示。
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ page import="java.sql.*"%>
<html>
<head><title> JSP分页显示技术</title>
</head>
<%
Class.forName("com.mysql.cj.jdbc.Driver").newInstance(); //隐式装载驱动程序
String url="jdbc:mysql://localhost:3306/test? useUnicode=true & characterEncoding=utf-8 & rewriteBatchedStatements=true & useSSL=false & serverTimezone=UTC & allowPublicKeyRetrieval=true";
String user="root"; //数据库的用户名
String password="******"; //数据库的密码
Connection conn= DriverManager.getConnection(url,user,password); //建立连接Statement stmt=conn.createStatement(); //创建Statment
String sql="select * from students"; //构造所要执行的SQL语句,dbo.person是tempdb数据库中的一个表
ResultSet rs=stmt.executeQuery(sql); //执行sql语句并返回结果给所定义的结果集
%><%
int pageSize =5; //设置一页显示的记录数,可根据需求自行修改
int allRows =0; //记录总行数
int pageCount =0;//计算总页数
int pages=0;//记录页码
int num=0;
//获取记录总行数
while(rs.next())num++;
allRows=num;
pageCount=(allRows + pageSize -1)/pageSize;
//获取参数页码page
String strPage =request.getParameter("page");
//参数为空,则显示第一页的记录
if(strPage== null || "".equals(strPage))strPage = "1";
//转化为int型
pages = Integer.parseInt(strPage);//当page小于1时,显示第一页记录
if(pages <1) pages =1;//当page大于总页数时,显示最后一页的记录
if(pages > pageCount) pages = pageCount;
%> <body>
<div id="top">
<h3>学生基本信息</h3>
</div><div id="middle">
<table>
<form action="" method="post">
<tr><th>学号</th><th>姓名</th>
</tr>
<%
int n=0;
rs.absolute((pages-1)*pageSize);
while(n<pageSize&&n<allRows&&allRows!=0&&rs.next()){n++;%><tr><td><%=rs.getString(1) %></td><td><%=rs.getString(2) %></td></tr>
<%
} %>
</form>
</table>
</div>
<div id="bottom">
<form action="test.jsp" method="post"><p> 共<%=pageCount %>页 共<%=allRows %>条</p> <a href="test.jsp?page=1">首页</a><%if(pages >1) {%><a href="test.jsp?page=<%=pages-1%>">上一页</a><%}%><%if(pages <pageCount){%><a href="test.jsp?page=<%=pages+1%>">下一页</a><%}%><a href="test.jsp?page=<%=pageCount%>">尾页</a>跳到第<input type="text" name="page" size="4">页<input type="submit" name="submit" size="4" value="GO">
</form>
</div>
<%
rs.close(); //关闭结果集
stmt.close(); //关闭Statment
conn.close(); //关闭连接
%>
</body>
</html>
分页效果:
JSP 分页显示技术相关推荐
- jsp分页技术用oracle实现,Oracle Rownum的使用与JSP分页显示的实现
Oracle Rownum的使用与JSP分页显示的实现 徐越人 [期刊名称]<计算机与现代化> [年(卷),期]2007(000)010 [摘要]首先对Oracle的Rownum使用的诸多 ...
- 简单的JSP分页显示
1.mysql的limit关键字 (DAO) select * from tablename limit startPoint, numberPerPage; tablename 就是要分页显示的那张 ...
- jsp分页显示的代码与详细步骤 复制代码
首先要定义四个变量: int pageSize:每页显示多少条记录 int pageNow:希望显示第几页 int pageCount:一共有多少页 int rowCount:一共有多少条记录 说明: ...
- linux的ps 分页显示,技术|5 个最酷的终端分页器
像日志或源代码这样的大文件可能会多达成千上万行,这使得在文件内导航非常困难,尤其是在终端上.此外,大多数终端仿真器的回滚缓冲区只有几百行.这可能使得无法使用打印到标准输出的实用程序(例如 cat.he ...
- asp数据分页显示技术(上下页版)
<%set rs=server.CreateObject("adodb.recordset") sql="select * from [student_admin] ...
- jsp分页功能的实现
分页查询功能一直是web编程中常用的技术,如何实现可重复使用而又简单的分页技术呢,下面的代码可以提供一些参考,实现用户列表的分页显示,当其它数据需分页显示时,可以复用其中的分页对象 (SplitPag ...
- jsp使用mysql技术分页_JSP分页技术实现
你好,记得你在JavaResearchOrganization上发过的帖子:"JSP分页技术实现"吗? 我看过后觉得很不错,决定采用你的方法了.首先注明的是我是新手,希望一些很低级 ...
- java程序设计与j2ee中间件技术/软件开发技术(III)-大作业-采用MVC模式实现商品信息的查询显示(可以模糊查询)、增加和删除功能,商品表自拟,实现简单菜单操作和分页显示
目录 1.题目说明 2.实验设计 2.1 表设计 2.2 工程结构 3.运行界面截图与说明 4.小结 附录:源代码 src/main/java src/main/java/bean Goods.jav ...
- JSP连接SQL数据库实现数据分页显示
<%@ page contentType="text/html; charset=gb2312" %> <%@ page language="java& ...
- java页面分页显示代码_通用分页jsp页面显示
注:本章内容都是在上一篇文章 通用分页后台显示:https://www.cnblogs.com/ly-0919/p/11058942.html 的基础上进行改进,所以有许多的类都在上一篇, 带来不便 ...
最新文章
- R语言构建xgboost模型:使用xgb.DMatrix保存、加载数据集、使用getinfo函数抽取xgb.DMatrix结构中的数据
- 操作系统(十七)调度算法(二)
- jQuery-DOM操作之属性、class
- 2021牛客暑期多校训练营8 J-Tree(思维dp+rmq)
- python pandas合并多个excel_python pandas合并多个excel(xls和xlsx)文件(弹窗选择文件夹和保存文件)...
- 3G手机Android应用开发视频教程_黎活明老师的视频(第三天课程)总共有八天课程...
- eclipse调试debug时出现source not found
- java kill 进程 时间_kill及kill-9的用法及如何实现进程的优雅退出
- Mysql 5.7 Gtid内部学习(十) 实际案例(二)
- Hadoop:Hadoop简介及环境配置
- apache 负载均衡
- autoflowchart软件使用步骤_AutoFlowchart(c语言流程图生成器) V 3.5.3 官方版
- 现代经济中的货币创造
- linux 设置 中文输入法,linux的中文输入法设置
- c语言家谱管理系统不是二叉树,二叉树实现的简单家谱管理系统
- AP下发AT+CLAC命令后,手机出现宕机 - MTK物联网在线解答 - 技术论坛
- c语言oj中的wa是什么意思,杭电oj1002题一直是WA ,然而格式什么的都对啊?求教OAO...
- pdf格式转换成jpg转换器
- R语言分析股票指数的GARCH效应
- 小程序点餐系统——首页