高效简单的JSP分页代码分

<%@ page import="java.sql.*,java.io.*,java.util.*" %>
  <%@ page language="java" pageEncoding="Big5" %>
  <%! String au_id,au_lname,au_fname,phone,address,city,state;%>
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  <html>
  <head>
  <title>ArticleList</title>
  <link rel="stylesheet" href="style.css">
  </head>
  <body bgcolor="#FFFFFF">
  
  <table width="760" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr>
  <td>
  <table width="750" border="0" cellspacing="2" cellpadding="2" align="center">
  <tr align="center">
  <td> </td>
  </tr>
  <tr>
  <td>
  <table width="740" border="0" cellspacing="1" cellpadding="1" align="center">
  <tr align="center" bgcolor="#CCCCCC">
  <td><b>标题</b></td>
  <td><b>作者</b></td>
  <td><b>类型</b></td>
  <td><b>点击</b></td>
  <td><b>加入时间</b></td>
  </tr>
  <%
  int i;
  int ipage=5; //分页单位
  int allpage; //总页数
  int pages; //接受的页码变量
  int cpage=1; //当前页
  int spage; //开始页
  int allCol=0;
  Vector v=null;
  
  //数据库连接声明
   Connection conn=null;
   java.lang.String sql,pagesql;
   java.sql.ResultSet rs,pagers;
   Statement statement=null;
   String kmsdb="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=DBName";
   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    conn = DriverManager.getConnection(kmsdb, "user", "pwd");
  
   pagesql = "sel&#101;ct COUNT(*) FROM Authors";
  
  //取总文章数
  statement = conn.cr&#101;ateStatement();
  pagers = statement.executeQuery(pagesql);
   while(pagers.next())
   {
   allCol = pagers.getInt(1);
   System.out.println(allCol);
  
   }
  
  //获得总页面数
  allpage = (int)Math.ceil((allCol + ipage-1) / ipage);
  //判断参数pages是否空
  if (request.getParameter("pages")==null) {
  pages=1;
  } else {
  pages = new Integer(request.getParameter("pages")).intValue();
  System.out.println(pages);
  }
  //判断当前页
  if(pages > allpage || pages == 0)
  {cpage = 1;}
  else
  {
  cpage = pages;
  }
  //判断起始页
  sql = "sel&#101;ct Top "+ipage+" au_id,au_lname,au_fname,address,phone from authors wh&#101;re au_id not in (sel&#101;ct top "+(cpage-1)*ipage+" au_id from authors order by au_id desc)order by au_id desc";
  rs = statement.executeQuery(sql);
  while (rs.next())
  {
   au_id=rs.getString("au_id");
   au_lname=rs.getString("au_lname");
   au_fname=rs.getString("au_fname");
   phone=rs.getString("phone");
   address=rs.getString("address");
  
  %>
   <td width="300"><%= au_id %></a></td>
   <td width="300"><%= au_lname %></a></td>
   <td width="300"><%= au_fname %></a></td>
   <td width="300"><%= phone %></a></td>
   <td width="300"><%= address %></a></td>
  </tr>
  <%  
  }%>
  <tr bgcolor="#CCCCCC">
  <td colspan="5" align="right" valign="middle">共 <%= allCol %>条记录 共 <%= allpage %>页 <% if (cpage>1) { %><a href="fy.jsp?pages=<%= cpage-1 %>"><img src="images/prev.gif" border="0"></a><% } if (cpage<allpage) { %><a href="fy.jsp?pages=<%= cpage+1 %>"><img src="images/next.gif" border="0"></a><% } %> / <% for (i=1;i<=allpage;i++) { if (i != pages) {%><a href="fy.jsp?pages=<%= i %>"><%= i %></a> <% }} %></td>
  </tr>
  </table>
  </td>
  </tr>
  </table>
  </td>
  </tr>
  </table>
  </body>
  </html>
关注微信公众号,手机阅读更方便: 程序员的阅微草堂

知识共享许可协议莿鸟栖草堂CFC4N 创作,采用 知识共享 署名-非商业性使用-相同方式共享(3.0未本地化版本)许可协议进行许可。基于http://www.cnxct.com上的作品创作。转载请注明转自:高效简单的JSP分页代码分

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.