<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<head>
<title>分页显示</title>
</head>
<body>
<center>
<h1>人员列表</h1>
<hr>
<br>
<%!
final String jspUrl = "list_person_false_05.jsp" ;
%>
<%
// 定义如下分页变量
// 1、定义没页要显示的记录数
int lineSize = 10 ;
// 2、定义一个当前是第几页
int currentPage = 1 ;
// 计算出总页数
int pageSize = 0 ;
// 总记录数 / 每页显示的记录数
int allRecorders = 30 ;
%>
<%
// 接收传过来的当前页
try
{
currentPage = Integer.parseInt(request.getParameter("cp")) ;
}
catch(Exception e)
{}
%>
<%
final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
final String DBURL = "jdbc:mysql://localhost/mldn" ;
final String DBUSER = "root" ;
final String DBPASSWORD = "mysqladmin" ;
Connection conn = null ;
%>
<%
try
{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ;
PreparedStatement pstmt = null ;
String sql = "SELECT COUNT(id) from person" ;
pstmt = conn.prepareStatement(sql) ;
ResultSet rs = pstmt.executeQuery() ;
if(rs.next())
{
allRecorders = rs.getInt(1) ;
}
rs.close() ;
pstmt.close() ;
// 计算总页数
pageSize = (allRecorders+lineSize-1)/lineSize ;
sql = "SELECT id,uid,name,password FROM person" ;
pstmt = conn.prepareStatement(sql) ;
rs = pstmt.executeQuery() ;
%>
<script language="javaScript">
function openPage(curpage)
{
document.spage.cp.value = curpage ;
// alert(cupage) ;
document.spage.submit() ;
}
function selOpenPage()
{
document.spage.cp.value = document.spage.selpage.value ;
document.spage.submit() ;
}
</script>
<form name="spage" action="<%=jspUrl%>">
<input type="button" value="首页" onClick="openPage(1)" <%=currentPage==1?"disabled":""%>>
<input type="button" value="上一页" onClick="openPage(<%=currentPage-1%>)" <%=currentPage==1?"disabled":""%>>
<input type="button" value="下一页" onClick="openPage(<%=currentPage+1%>)" <%=currentPage==pageSize?"disabled":""%>>
<input type="button" value="尾页" onClick="openPage(<%=pageSize%>)" <%=currentPage==pageSize?"disabled":""%>>
<input type="hidden" name="cp" value="">
<font color="red" size="5"><%=currentPage%></font>
/
<font color="red" size="5"><%=pageSize%></font>
跳转到
<select name="selpage" onChange="selOpenPage()">
<%
for(int x=1;x<=pageSize;x++)
{
%>
<option value="<%=x%>" <%=currentPage==x?"selected":""%>><%=x%></option>
<%
}
%>
</select>
页
</form>
<table border="1" width="80%">
<tr>
<td>编号</td>
<td>登陆名称</td>
<td>姓名</td>
<td>密码</td>
<td colspan="2">操作</td>
</tr>
<%
int i = 0 ;
for(int x=0;x<(currentPage-1)*lineSize;x++)
{
rs.next();
}
// 对于输出代码之前要求按显示的页数空出
for(int x=0;x<lineSize;x++)
{
if(rs.next())
{
i++ ;
int id = rs.getInt(1) ;
String userid = rs.getString(2) ;
String name = rs.getString(3) ;
String password = rs.getString(4) ;
%>
<tr>
<td><%=id%></td>
<td><%=userid%></td>
<td><%=name%></td>
<td><%=password%></td>
<td>更新</td>
<td>删除</td>
</tr>
<%
}
}
rs.close() ;
pstmt.close() ;
if(i==0)
{
%>
<tr>
<td colspan="6">没有任何数据!!</td>
</tr>
<%
}
%>
</table>
<%
}
catch(Exception e)
{
%>
<h2>系统出错!!!</h2>
<%
}
finally
{
conn.close() ;
}
%>
</center>
</body>
</html>
分享到:
相关推荐
以下是一个简单的JSP假分页实现示例: 1. **假分页的基本思想**: - 全部数据获取:首先,程序会执行SQL查询,获取数据库中的所有记录。 - 数据截取:然后,仅保留当前页需要显示的数据,其余部分被忽略。 - ...
以下是一个简单的真分页实现示例: ```java protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int pageSize = 10; int currentPage = ...
2. JSP页面设计:创建一个HTML表格来展示数据,并提供分页导航。分页链接需要携带当前页码作为参数。 3. JSP逻辑处理:在JSP页面中,使用Java代码段或自定义标签处理分页逻辑。接收请求参数,计算LIMIT和OFFSET值,...
本教程将详细讲解如何使用JSP制作一个简单的“假分页”效果。 首先,我们要理解什么是“假分页”。假分页通常是指在没有数据库支持的情况下,通过固定的数据集模拟分页效果,适合于数据量不大或者不需实时更新的...
然而,假分页的一个显著缺点是性能问题。因为它需要一次性加载所有数据,当数据量巨大时,这会消耗大量内存,同时增加服务器负担。在实际应用中,尤其是大数据场景,通常采用“真分页”技术,即只查询当前需要显示的...
在这个"JSP+JDBC_假分页"的主题中,我们将深入探讨如何在不使用数据库支持的分页功能下,通过JSP和JDBC实现一个简单的“假分页”机制。假分页通常指的是在服务器端一次性加载所有数据,然后在客户端(浏览器)进行...
jsp假分页代码,让你更好的把JSP读取数据库然后分页
【标题】"jsp+mySql 真假分页"涉及了Web开发中的两种常见分页技术:真分页和假分页。这两种方法在处理大量数据时特别有用,能够提高网页加载速度,优化用户体验。 **一、真分页** 真分页(Physical Pagination)是...
JSP+JDBC_假分页\\1-JSP+JDBC_假分页_.wmv
绝对精简的JSP分页,经过本人亲测,绝对好用,方便不想复杂分页的朋友使用。 此分页方法是先将要分页的List对象放在Session中, 然后在页面中,用for循环取出数据。
JSP的假分页代码,让你更好地分JSP页
在提供的资源中,`1-JSP+JDBC_假分页`可能包含了使用JSP和JDBC实现假分页的示例代码。源代码可能包括以下几个关键部分: 1. **Servlet部分**:处理HTTP请求,接收页码和每页数据量参数,执行SQL查询(可能使用预...
总之,JSP中的分页实现可以根据项目需求选择真分页或假分页,同时,为了代码的可维护性和可扩展性,推荐将分页逻辑进行抽象和封装。理解这两种分页方式的工作原理和适用场景,对于提升JSP开发能力至关重要。
1. 用户输入:在JSP页面上,我们需要创建两个主要元素:一个用于选择页码的下拉框和一个显示数据的表格。用户通过选择页码来查看不同页面的数据。 2. 分页逻辑:使用JavaScript或jQuery监听下拉框的改变事件,根据...
在这个例子中,我们关注的是“假分页”(也称为逻辑分页),这种技术常用于数据量不大或者不需要实时更新的数据展示。 Struts是一个经典的MVC(Model-View-Controller)框架,它为Java Web应用程序提供了结构化的...
当数据集过于庞大,一次性加载所有内容会影响页面加载速度并降低用户体验时,假分页(也称为无限滚动)就显得尤为重要。假分页不同于传统的物理分页,它不预先计算和生成所有页面,而是根据用户的滚动行为动态加载更...
这涉及到两种主要的分页方式:假分页和真分页。这两种方法各有优缺点,适用于不同的场景。 ### 1. 假分页 假分页是一种基于程序逻辑实现的分页方法。它并不依赖于数据库的特定功能,而是通过程序计算出当前页所需...