JSP分页,查询结果分页显示

原文地址:http://wenku.baidu.com/view/fe2933e79b89680203d825b5.html

<%@ page contentType="text/html; charset=gb2312" %> <%@ page language="java" import="java.sql.*" %> <html> <head> 
<title>JSP连接SQL数据库实现数据分页显示</title> </head> <body> 
<h1 align="center">JSP连接SQL数据库实现数据分页显示</h1>  <% 
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 

String user="sa"; 

String password="123"; 
Connection conn=DriverManager.getConnection(url,user,password); 

Statement  stmt= conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 

String sql="select * from employee"; 

ResultSet rs=stmt.executeQuery(sql);   

 int pageSize;//一页显示的记录数   

 int totalItem;//记录总数   

 int totalPage;//总页数  

  int curPage;//待显示页码    

String strPage;   

 int i; 
   pageSize=10;//设置一页显示的记录数 
   strPage=request.getParameter("page");//获得待显示页码  

  if(strPage==null)    { 
    curPage=1;    }    else    { 
    curPage=java.lang.Integer.parseInt(strPage);//将字符串转换成整形    }

if(curPage<1)    { 
    curPage=1;    } 
   rs.last();//获取记录总数   

 totalItem=rs.getRow(); 
   totalPage=(totalItem+pageSize-1)/pageSize; 
   if(curPage>totalPage) curPage=totalPage;//调整待显示的页码  

  if(totalPage>0) 
   {//将记录指针到待显示页的第一条记录上    

 rs.absolute((curPage-1)*pageSize+1);    

}   

 i=0;   

 %> 

  <table width="60%" border="1" align="center" bordercolor="#996699" bgcolor="#FFFFFF">  

 <tr bgcolor="#CCFFFF">

<td align="center">fname</td>    

 <td align="center">minit</td>    

 <td align="center">lname</td>     

<td align="center">job_id</td>     

<td align="center">job_lvl</td>     

<td align="center">pud_id</td>     

<td align="center">hire_date</td>  

 </tr> 
   <%//显示数据 
   while(i<pageSize && !rs.isAfterLast())    {    %>     

<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><%=rs.getString(8)%></td>    

 </tr>    

<%    rs.next();    i++;    }    %> 
   </table>

<p align="center"> 
   共<%=totalItem%>个记录,分<%=totalPage%>页显示,当前页是:第<%=curPage%>页<br /> 
   <%if(curPage>1){%><a href="page.jsp?page=1">首页</a><%}%>&nbsp;&nbsp;   

 <%if(curPage>1){%><a href="page.jsp?page=<%=curPage-1%>">



</a><%}%>&nbsp;&nbsp;

<% 
   for(int j=1;j<=totalPage;j++)    { 
    out.print("&nbsp;&nbsp;<a href='page.jsp?page="+j+"'>"+j+"</a>");    }    %> 
   &nbsp;&nbsp; 
   <%if(curPage<totalPage){%><a href="page.jsp?page=<%=curPage+1%>">下一页</a><%}%>&nbsp;&nbsp; 
   <%if(totalPage>1){%><a href="page.jsp?page=<%=totalPage%>">末页</a><%}%>    <%     rs.close();    stmt.close();    conn.close();    %> 

</body> </html>






































}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值