jsp实现分页技巧

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@page import="java.sql.ResultSet"%>
<%@page import="org.lxh.demo.DbDao"%>
<%@page import="java.sql.Statement"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
   %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<%request.setCharacterEncoding("Utf-8"); %>


<link rel="stylesheet" href="<%=request.getContextPath() %>/css/style2.css" type="text/css" media="screen">
<link rel="stylesheet" href="<%=request.getContextPath() %>/css/style.css" type="text/css" media="screen">
<title>无标题文档</title>
<link href="<%=request.getContextPath() %>/css/html_right.css" rel="stylesheet" type="text/css" />
<style type="text/css">


</style>
</head>


<body>
<div class="right_body">




<div class="poser">此功能是为管理员提供权限,由管理员可以再后台可以订票欲查询系统。</div>
<div class="poser_top1">
<div class="poser_iddle">
<div style="margin-left:-10px;margin-top:-60px">
<table class="car_select" border="1" style="BORDER-COLLAPSE: collapse;width:100%">


<tr>
<td>账号</td><td>密码</td><td>管理权限</td><td>姓名</td><td>性别</td><td>住址</td><td>证件号</td><td>修改</td><td>删除</td>


</tr>
<tr>
<%


Statement st = null;


DbDao db = new DbDao();
st = db.getConnection().createStatement();
//接受pagenow参数
String s_pageNow = request.getParameter("pageNow");
String t_pageNow = (String)request.getAttribute("t_pageNow");
int pageNow = 1;
if(s_pageNow != null){
pageNow = Integer.parseInt(s_pageNow);
}
if(t_pageNow != null){
pageNow = Integer.parseInt(t_pageNow);

}
System.out.println("页码:"+pageNow);
//查询总页数
int pageCount = 0;
int pageSize = 8;
int rowCount = 0;
ResultSet rs = null;
rs = st.executeQuery("select DISTINCT count(*) from users");
if(rs.next()){

rowCount = rs.getInt(1);

if(rowCount % pageSize == 0){
pageCount =rowCount / pageSize;
}else{
pageCount =rowCount / pageSize +1;
}
}


rs = st.executeQuery("select * from users limit "+((pageNow - 1)*pageSize )+","+pageNow*pageSize+"");
while(rs.next()){
%>
<tr>

<td><%=rs.getString(1) %></td>
<td><%=rs.getString(2) %></td>
<td><%=rs.getString(3) %></td>
<td><%=rs.getString(4) %></td>
<td><%=rs.getString(5) %></td>
<td><%=rs.getString(6) %></td>
<td><%=rs.getString(7) %></td>
<td><a href="<%=request.getContextPath() %>/SelectCarSelvet?phone=<%=rs.getString(1)%>&&password=<%=rs.getString(2) %>&&poser=<%=rs.getString(3) %>&&name=<%=rs.getString(4) %>&&sex=<%=rs.getString(5) %>&&address=<%=rs.getString(6) %>&&cardid=<%=rs.getString(7) %>&&fenye=update">修改 </a></td>
<td><a href="<%=request.getContextPath() %>/DeleteServlet?phone=<%=rs.getString(1) %>&&fenye=deleteusers">删除 </a></td>
</tr>

<%

}


%>


</table>
共<%=pageCount %>页


<%
if(pageNow ==1){      //跳转第一页时候不跳转
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=pageNow%>&&fenye=msg">上一页</a>
<% 

}else{               //没有跳转到第一夜时候
//out.println("<a href=../SelectCarSelvet?pageNow="+(pageNow - 1)+">"+"上一页"+"</a>");
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=(pageNow - 1)%>&&&&fenye=msg">上一页</a>
<% 
}
if(pageCount <=5){
for(int i=1;i<=pageCount;i++){
//out.println("<a href=../SelectCarSelvet?pageNow="+i+">"+i+"</a>");
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=i %>&&&&fenye=msg"><%=i %></a>
<%
}
}else if(pageCount - pageNow <=5){
for(int i=pageNow;i<=pageCount;i++){
//out.println("<a href=../SelectCarSelvet?pageNow="+i+">"+i+"</a>");
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=i %>&&fenye=msg"><%=i %></a>
<%
}
}else{

for(int i= pageNow;i<=pageNow+5;i++){
//out.println("<a href=../SelectCarSelvet?pageNow="+i+">"+i+"</a>");
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=i %>&&fenye=msg""><%=i %></a>
<%
}
}
if(pageNow ==pageCount){
//out.println("<a href=../SelectCarSelvet?pageNow="+pageNow+">"+"下一页"+"</a>");
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=pageNow %>&&fenye=msg"">下一页</a>
<%
}else{
//out.println("<a href=../SelectCarSelvet?pageNow="+(pageNow +1)+">"+"下一页"+"</a>");
%>
<a href="<%=request.getContextPath() %>/SelectCarSelvet?pageNow=<%=(pageNow +1) %>&&fenye=msg"">下一页</a>
<%
}






























%>








</div></div>
</div>


</div>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com; public class Pager { private int totalRows = 0; // 记录总数 private int totalPages = 0; // 总页数 private int pageSize = 10; // 每页显示数据条数,默认为10条记录 private int currentPage = 1; // 当前页数 private boolean hasPrevious = false; // 是否有上一页 private boolean hasNext = false; // 是否有下一页 public int getSearchFrom() { return (currentPage - 1) * pageSize; } public Pager() { } public void init(int totalRows) { this.totalRows = totalRows; this.totalPages = ((totalRows + pageSize) - 1) / pageSize; refresh(); // 刷新当前页面信息 } /** * * @return Returns the currentPage. * */ public int getCurrentPage() { return currentPage; } /** * * @param currentPage * current page * */ public void setCurrentPage(int currentPage) { this.currentPage = currentPage; refresh(); } /** * * @return Returns the pageSize. * */ public int getPageSize() { return pageSize; } /** * * @param pageSize * The pageSize to set. * */ public void setPageSize(int pageSize) { this.pageSize = pageSize; refresh(); } /** * * @return Returns the totalPages. * */ public int getTotalPages() { return totalPages; } /** * * @param totalPages * The totalPages to set. * */ public void setTotalPages(int totalPages) { this.totalPages = totalPages; refresh(); } /** * * @return Returns the totalRows. * */ public int getTotalRows() { return totalRows; } /** * * @param totalRows * The totalRows to set. * */ public void setTotalRows(int totalRows) { this.totalRows = totalRows; refresh(); } // 跳到第一页 public void first() { currentPage = 1; this.setHasPrevious(false); refresh(); } // 取得上一页(重新设定当前页面即可) public void previous() { if (currentPage > 1) { currentPage--; } refresh(); } // 取得下一页 public void next() { //System.out.println("next: totalPages: "
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值