Java-黑蝙蝠  
My name is mozart0
外表涩苦但留醇香于舌尖
online
Adult Dating
公告
  • 多一份自信,多一份成功!
    多看一本书,多一份机遇!
    多一次微笑,多一份快乐!
日历
<2006年3月>
2627281234
567891011
12131415161718
19202122232425
2627282930311
2345678
统计
  • 随笔 - 10
  • 文章 - 0
  • 评论 - 32
  • 引用 - 0

导航

常用链接

留言簿(6)

随笔分类(10)

随笔档案(10)

相册

天气预报

常去论坛

搜索

  •  

积分与排名

  • 积分 - 38478
  • 排名 - 1188

最新评论

阅读排行榜

评论排行榜

 

 

<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="java.sql.*"%>
<html>
<title>分页显示(jsp版)</title>
<body>

<%!  int pageSize = 5;//每页显示的记录数
     int pageCount = 0;//总页数
%>

<%
    Connection con;
    String DatabaseDriver 
= "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    String CnnStr 
= "jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=Shopping";
    
try {
        Class.forName(DatabaseDriver);
        con 
= DriverManager.getConnection(CnnStr, "sa""11"); 
        Statement stmt 
= con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);//可滚动查询数据的结果集
        ResultSet rs =  stmt.executeQuery("select * from ProductInfo order by P_ID");
        rs.last(); 
//让游标到表中的最后一行
        int rowCount = rs.getRow(); //获取记录总数.
        
//out.print("总记录数为"+rowCount);
        
//总页数的计算公式
        pageCount = (rowCount % pageSize == 0? (rowCount / pageSize ) : (rowCount / pageSize +1);
        
int showPage = 1;//当前页
%>



<%
    
//取得用户所指定的页
    String goToPage = request.getParameter("showPage");
    
if (goToPage == null){
        goToPage 
= "1";
    }

    
    
//转换成整形
    try{
        showPage 
= Integer.parseInt(goToPage);
    }

    
catch (NumberFormatException ex){
        showPage 
= 1;
    }

    
    
//当前页小于等于第一页 则按第一页算 如果 当前页大于等于总页数则为最后页
    if(showPage <=1){
        showPage 
= 1;
    }

    
else if(showPage >= pageCount){
        showPage 
=  pageCount;
    }

    
    
//游标的位置 (当前页 - 1) * 页面大小 + 1
    int posion = (showPage -1 ) * pageSize + 1;
    
//设置游标的位置 
    rs.absolute(posion);

%>


<table border="1" cellspacing="0" cellpadding="0"> 
<tr> 
<th>商品号</th> 
<th>商品名称</th> 
</tr> 
<%
   
int i =0;
   
//循环显示表中的数据 pageSize(每页所显示的记录)
   
//rs.isAfterLast() 游标是否在最后一行之后 说明后面已经没记录
   while(i<pageSize && !rs.isAfterLast()){
%>
<tr> 
<td><%=rs.getString(1)%></td> 
<td><%=rs.getString(2)%></td> 
</tr> 
<%rs.next();i++;}
%>
</table> 


<table width="624">
<form action="" method="get">   

<tr>
<td>
<%if(showPage < pageCount){%>
    
<a href="Noname1.jsp?showPage=<%=showPage+1%>">[下一页]</a>
<%}
%> 
</td>
<td><%if(showPage > 1){%>
    
<a href="Noname1.jsp?showPage=<%=showPage-1%>">[上一页]</a>
    
<%}
%> 
</td>

<td> 共<%=pageCount%>页 </td>
<td> 第<%=showPage%>页  </td>
<td> <a href="Noname1.jsp?showPage=1">『首页』</a> </td>
<td> <a href="Noname1.jsp?showPage=<%=pageCount%>">『尾页』</a> </td>
<td> <%=rowCount%> </td>
<td>
  转到
<input type="text" name="showPage" size="4"></input>
      
<input type="submit" name="go" value="提交"></input>  
</td> 
</tr>
</form>
</table>
<% 
con.close(); 
}
  catch (ClassNotFoundException e1) {out.print(e1.getMessage());}
    
catch(SQLException e2){ out.print(e2.getMessage());}
%>
</body>
</html>
<!--小弟初学Java不久,第一次写Blog , 有不足之处还望各位指点一二 , 感激不尽. 过一整子在献上JavaBean版的分页显示.. (: 2006-02-26 12:57 -->
posted on 2006-02-26 13:23 黑蝙蝠 阅读(9332) 评论(10)  编辑  收藏 所属分类: Jsp(基础)
评论:
  • # re: 分页实现(jsp版)  asdf Posted @ 2006-03-05 20:54
    不错不错!尽管很简单,通俗易懂,让人一看就懂的最基本的分页原理!
    值得推称!

    我是搞软件开发的,正在学Struts和Hihernate
    有兴趣的软件人员可以加入精通Struts与Hihernate群

    群号:16909365
      回复  更多评论   

  • # re: 分页实现(jsp版)  黑蝙蝠 Posted @ 2006-03-10 20:58
    谢谢 你是第一个给我评论的人 呵呵 我不会忘记你的
    我加入你的群吧 呵呵 我会一直努力的 Thank you !!!  回复  更多评论   

  • # re: 分页实现(jsp版)  JavaPro Posted @ 2006-04-13 14:12
    进步非常大!
    +U!
    Andy也是我的偶像,十几年了,一直没变过...

    非常高兴能看到你取得更多更大的进步:P  回复  更多评论   

  • # re: 分页实现(jsp版)  JavaPro Posted @ 2006-04-13 14:16
    不过,对于你的分页,我觉得有很大的不足.

    既然是Jsp分页,为什么要使用Java脚本呢?

    不好读,也不好维护,我给你推荐一段Jsp分页代码:

    <bean:size id="listSize" name="entrys"/>
    <c:set var="pageSize" value="2"/>
    <c:set var="pageBegin" value="${param.pageBegin}"/>
    <c:set var="pageEnd" value="${pageBegin + pageSize - 1}"/>
    <c:if test="${(pageBegin - pageSize) ge 0}">
    <a href='<c:url value="Content.do">
    <c:param name="category" value="${category}"/>
    <c:param name="pageBegin" value="${pageBegin - pageSize}"/></c:url>'>
    Prev
    </a>
    </c:if>
    &nbsp;
    <c:if test="${(listSize gt pageSize) and (pageEnd lt listSize)}">
    <a href='<c:url value="Content.do">
    <c:param name="category" value="${category}"/>
    <c:param name="pageBegin" value="${pageBegin + pageSize}"/></c:url>'>
    Next
    </a>
    </c:if>

    <c:forEach var="entry" items="${entrys}" begin="${pageBegin}" end="${pageEnd}">
    <c:url value="Page.do" var="entryURL">
    <c:param name="id" value="${entry.id}"/>
    <c:param name="category" value="${entry.category}"/>
    </c:url>
    <h4><a href='<c:out value="${entryURL}"/>'><c:out value="${entry.title}" escapeXml="false"/></a>
    <span class="top">|(<a href="#top">top</a>)</span></h4>
    <p class="subhead">posted: <c:out value="${entry.pubtime}"/> creator: <c:out value="${entry.creator}" escapeXml="false"/> <c:out value="${entry.copyright}"/></p>
    <p><c:out value="${entry.description}" escapeXml="false"/></p>
    </c:forEach>  回复  更多评论   

  • # re: 分页实现(jsp版)  黑蝙蝠 Posted @ 2006-04-16 02:45
    谢谢啊 楼上这位大哥 你也是andy的fans啊 呵呵
    以后还望多指教啊 呵呵
    我的qq:21887711  回复  更多评论   

  • # re: 分页实现(jsp版)  leizhengwei Posted @ 2007-02-01 00:42
    真的很好  回复  更多评论   

  • # re: 分页实现(jsp版)  aa Posted @ 2007-02-28 13:56
    看不懂
    category是什么啊?
    entrysy又是什么啊?
    我的items="${list}"list是我查出的结果集
    Content.do和Page.do是什么?  回复  更多评论   

  • # re: 分页实现(jsp版)  hutch25 Posted @ 2008-05-20 16:04
    后面给你的那个分页用到了Struts,用的是标签  回复  更多评论   

  • # re: 分页实现(jsp版)  菜鸟zj Posted @ 2011-11-08 21:34
    Noname1.jsp是什么啊?我刚开始学习不懂这个,谢谢咯  回复  更多评论   

  • # re: 分页实现(jsp版)[未登录]  Kyle Posted @ 2012-02-14 03:49
    谢谢分享  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 
 
Copyright © 黑蝙蝠 Powered by: 博客园 模板提供:沪江博客