JSP分页思想2—核心代码

一、通过order by id desc limit ?,? 控制当前页面显示的记录

JSP分页思想2—核心代码

显示第几页,共几页,上一页 下一页

<% 
    int PageSize=2; //一页显示的记录数
    int RowCount=0; //记录总数
    int PageCount=0; //总页数
    int intPage; //待显示页码
    int i;//循环变量
    String strPage = request.getParameter("page");  //取得待显示页码
                    if(strPage==null){
                        //表明在QueryString中没有page这一个参数,此时显示第一页数据
                        intPage = 1;
                    } else{
                        //将字符串转换成整型
                        intPage = java.lang.Integer.parseInt(strPage);
                        //if(intPage<1) intPage = 1;
                    }
                    //获取记录总数
	String sql = "select count(*) from employee_info"; 
try {    Statement stmt = conn.createStatement();// 创建Statement
		 ResultSet rs = stmt.executeQuery(sql); 
	if(rs.next()){ RowCount = rs.getInt(1); }
    	//获取总页数
     if(RowCount%PageSize==0){
		PageCount=RowCount/PageSize;
		}else{PageCount=RowCount/PageSize+1;}
   String  condition="select * from employee_info order by id desc limit ?,?";    
	PreparedStatement ps = conn.prepareStatement(condition); 
	ps.setInt(1, (intPage - 1) * PageSize); 
	ps.setInt(2, PageSize); 
	 rs = ps.executeQuery();// 执行查询操作
	out.print("<table border='1' width='100%'>");
  	out.print("<tr>"); out.print("<th >"+"雇员号"+"</th>");
  	out.print("<th >"+"姓名"+"</th>");
  	out.print("<th >"+"出生日期"+"</th>");
  	 out.print("</tr>");
    while(rs.next()){// 光标向后移动,并判断是否有效
		 out.print("<tr>");
		String id=rs.getString(1);
             out.print("<td >"+id+"</td>"); 
             out.print("<td >"+rs.getString(2)+"</td>");
             out.print("<td >"+rs.getDate("birthday")+"</td>"); 
             out.print("</tr>") ; 
 	}
  	out.print("</table>");
		rs.close();// 关闭ResultSet
		ps.close();// 关闭PreparedStatement
		conn.close();// 关闭Connection
} catch (SQLException e) { e.printStackTrace(); }
                 %>              
 
          <div align="center">
                第<%=intPage%>页 共<%=PageCount%>页
                <%
                if(intPage<PageCount){
                %>
                <a href="admin2.jsp?page=<%=intPage+1%>">下一页</a>
                <%
                 }
                 if(intPage>1){%>
                <a href="admin2.jsp?page=<%=intPage-1%>">上一页</a>
            <%}%>
   </div>

二、显示所有页码

JSP分页思想2—核心代码

前面分页程序不变,只在显示页码处通过循环输出所有页码并做上超链接。

<div align="center">
	第<%=intPage%>页 共<%=PageCount%>页
	<%  StringBuffer sb=new StringBuffer();
	for( i=1;i<=PageCount;i++){
	if(i==intPage){
		sb.append("["+i+"]");
	}else{
		sb.append("<a href='admin2.jsp?page="+i+"'>"+i+"</a>");
	}
	sb.append(" ");
	}%>               
 <% out.print(sb);  %>            
</div>

推荐阅读:JSP+MySQL MVC综合案例:完整的分页查询

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4055.html

(0)
江山如画的头像江山如画管理团队
JSP分页思想—核心代码
上一篇 2019年10月30日 上午10:31
你所不知道的犹太人!
下一篇 2019年10月30日 下午4:17

99%的人还看了以下文章

  • aspx文件编码不统一导致乱码

    今天发现了一个很奇怪的现象,页面在VS2008下面,有些页面乱码,而有些則不会。 上网查找了很多方法均不能解决,根据以前开发asp,php的经验,怀疑这些页面的编码可能不一样。 在VS2008下面还真的不知道在哪里看文件的编码,用Dreamweaver打开一个乱码跟一个不乱码的页面对比了一下,发现一个是gb2312(不乱码),而别外一个则是utf-8(乱码)…

    2019年2月14日
    3.2K0
  • JS+CSS3制作图形验证码

    一个前端验证的验证码,利用JS和CSS3实现。

    2022年12月1日
    11.4K0
  • 最全的数据结构排序算法实现及比较

    冒泡排序 类似暴力破解,1 – n 个,每个都比较一次。完成排序 public void sort(int[] arr) { int len = arr.length; for (int i = 0; i < len; i++) { for (int j = i + 1; j < len – 1; j++) { if (arr[i] …

    2020年10月13日
    7.8K0
  • 精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)

    精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)

    125建站网站长原来开发的myeclipse项目直接在IDEA打开发现会有很多问题,根据解决过程,写出此文章供大家参考! 1.首先打开IDEA工具,选择导入项目,然后在弹出的窗口中选择要打开的myeclipse文件,然后点击确定。如图所示 2.选择Eclipse,然后一直下一步 3.正常我们SDK这里都配置好了,直接选择就好,然后完成项目的导入 4.导入的完…

    2023年2月3日 编程开发
    8.4K0
  • 基于jspSmartUpload的Jsp文件上传实例(只能上传图片格式文件)

    支持中文的jsp文件上传组件:jspSmartUpload.jar下载 jar包的存放位置:WEB-INF\lib下。 upload_image.html <form method=”post” action=”new_upload.jsp” enctype=”multipart/form-data”> <input type=”file”…

    2018年12月11日
    8.7K0
  • java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

    java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

      串口通信在工程应用中很常见。 上位机与下位机 在上位机与下位机通讯过程中常通过有线的串口进行通信,在低速传输模式下串口通信得到广泛使用。 通常上位机指的是PC,下位机指的是单片机或者带微处理器的系统。下位机一般是将模拟信号经过AD采集将模拟量转换为数字量,下位机再经过数字信号处理以后将数字信号通过串口发送到上位机,相反上位机可以给下位机发送一些指令或者信…

    2023年1月7日 编程开发
    6.8K0

发表回复

登录后才能评论