JSP分页思想—核心代码

try{condition="select * from employee_info"; 
    sql=conn.createStatement();
    rs=sql.executeQuery(condition);
    int intPageSize; //一页显示的记录数
     int intRowCount; //记录总数
     int intPageCount; //总页数
     int intPage; //待显示页码 %>  </div>
   intPageSize = 2; //设置一页显示的记录数
   String strPage = request.getParameter("page");  //取得待显示页码
   if(strPage==null){
  //表明在QueryString中没有page这一个参数,此时显示第一页数据
     intPage = 1;       } 
   else{//将字符串转换成整型
 intPage = java.lang.Integer.parseInt(strPage);
        if(intPage<1) intPage = 1;
    }
  out.print("<table border='1' width='100%'>");
  out.print("<tr>"); out.print("<th >"+"雇员号");
  out.print("<th >"+"姓名");
  out.print("<th >"+"出生日期");
  out.print("<th >"+"薪水"); out.print("<th >编辑</th >");
  out.print("<th >删除</th >");     out.print("</tr>");
rs.last(); //光标指向查询结果集中最后一条记录
intRowCount = rs.getRow();  //获取记录总数
if(intRowCount%intPageSize==0){
   intPageCount=intRowCount/intPageSize;
}else{
   intPageCount=intRowCount/intPageSize+1;
}
if(intPage>intPageCount) 	intPage = intPageCount; //调整待显示的页码
if(intPageCount>0){    rs.absolute((intPage-1) * intPageSize + 1); 
//将记录指针定位到待显示页的第一条记录上
             int i = 0;
while(i<intPageSize && !rs.isAfterLast()){      //显示数据
             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("<td >"+rs.getInt("salary")+"</td>");
out.print("<td><a href=modify.jsp?id="+id+">编辑</a></td>");
out.print("<td ><a href=delete.jsp?id="+id+" onclick=return(confirm('确定删除吗?'))>删除</a></td>");
out.print("</tr>") ; 
rs.next();
         i++; }
}   
        out.print("</table>");%>
          <div align="center">
                第<%=intPage%>页 共<%=intPageCount%>页
                <%    if(intPage<intPageCount){ %>
                <a href="admin1.jsp?page=<%=intPage+1%>">下一页</a>
<% }
                 if(intPage>1){%>
                <a href="admin1.jsp?page=<%=intPage-1%>">上一页</a>
                <%    }
                    rs.close();
                    sql.close();
                    conn.close();
}  
 catch(SQLException e)      {  out.print(e);     }  %> 
 </div>

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

(6)
江山如画的头像江山如画管理团队
上一篇 2019年10月29日 上午10:42
下一篇 2019年10月30日 下午2:44

99%的人还看了以下文章

  • 第二课:Maven的下载安装及环境变量配置

    一、Maven的下载 下载地址:http://maven.apache.org/download.cgi 下载完成后,得到一个压缩包apache-maven-***-bin.zip,解压,可以看到maven的组成目录 Maven目录分析 bin:含有mvn运行的脚本 boot:含有plexus-classworlds类加载器框架 conf:含有setting…

    2023年1月27日 编程开发
    4.8K0
  • UEditor编辑器如何设置代码高亮?

    如果是一个编程或IT类网站,页面上会有大量代码,而让代码高亮显示,显示行号等,可以使页面更美观,用户体验更好。如果后台用百度编辑器(ueditor)可以使用自带的SyntaxHighlighter来实现代码高亮。

    2018年2月9日
    7.0K1
  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    2.6K0
  • web前端显示设备实时温度,ECharts实现温度折线图,实时动态温度曲线图生成

    web前端显示设备实时温度,ECharts实现温度折线图,实时动态温度曲线图生成。 具体步骤如下: 1.在页面中引入ECharts文件echarts-all.js <!– ECharts单文件引入 –> <script src=”http://echarts.baidu.com/build/dist/echarts-all.js”&gt…

    2019年5月31日
    19.9K1
  • 开发软件,编程语言Java和C++选哪个?

    根据网络调查数据:编程语言排名前三的是Java、C#、C++。 其中Java使用者比例最高,为42.82%,是C#的两倍还要多。 紧跟其后的是C#,比例为17.33%。 排名第三的C++则有14.35%的比例。 JAVA和C++都是面向对象语,都能够实现面向对象思想(封装,继乘,多态)。而由于C++为了照顾大量的C语言使用者,而兼容了C,使得自身仅仅成为了带…

    2021年2月16日
    5.7K0
  • Python安装-小白图文教程(精)

    python优点 python非常简单,易学。 python虽然是用c语言写的,但是它摈弃了c中非常复杂的指针,简化了python的语法。 Python程序无需修改就可以在任何平台上面运行。 Python既支持面向过程的函数编程也支持面向对象的抽象编程。 你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。你可以把Python嵌入你的…

    2019年3月15日 编程开发
    8.6K1

发表回复

登录后才能评论