zoukankan      html  css  js  c++  java
  • 一个用JSP实现的分页的类及调用方法

    //PageCt.java 分页的类
    /*
    *** @version ***********
    *** Created on 2001年6月25日, 下午14:41
    **************************************
    */
    package vod;
    import java.sql.*;
    import java.util.*;

    public class PageCt
    {
    private long l_start; //开始纪录
    private long l_end; //结束纪录
    private long l_curpage; //当前页数
    private long l_totalnum;//总记录数
    private int int_num=5; //每页10条
    private long l_totalpage; //总的页数


    public void Init(long currentpage,long totalnum)
    {
    l_curpage = currentpage;
    l_totalnum = totalnum;


    if (currentpage>=0)
    {
    if (currentpage>=(long)Math.ceil((double)l_totalnum/(double)int_num))
    l_curpage = (long)Math.floor((double)l_totalnum/(double)int_num);
    else
    l_curpage = currentpage;
    }
    else
    {
    l_curpage = 0;
    }
    l_start = l_curpage * int_num;
    l_end = l_start + int_num;
    if (l_end > l_totalnum)
    l_end = l_totalnum;
    l_totalpage = (long)Math.ceil((double)l_totalnum/(double)int_num);
    }
    public long getCurpage()
    {
    return l_curpage;
    }
    public long getPrepage()
    {
    if (l_curpage-1>=0)
    {
    return l_curpage-1;
    }
    else
    {
    return 0;
    }
    }
    public long getNextpage()
    {
    if (l_curpage+1<=l_totalpage)
    {
    return l_curpage+1;
    }
    else
    {
    return l_totalpage;
    }
    }
    public long getTotalnum()
    {
    return l_totalnum;
    }
    public long getTotalpage()
    {
    return l_totalpage;
    }
    public long getStart()
    {
    return l_start;
    }
    public long getEnd()
    {
    return l_end;
    }


    };
    ===============================================
    //调用例子
    <%
    /*
    *** @author 马毅 ***********
    *** @version ***********
    *** Created on 2001年6月12日, 下午17:13
    **************************************
    */
    <%@ page import="java.sql.*"%>
    <%@ page import="java.lang.*"%>
    <%@ page contentType="text/html;charset=gb2312" %>
    <jsp:useBean id="PageCount" scope="page" class="kstest.PageCt" />
    <jsp:useBean id="sqlbean" scope="page" class="vod.sql_data" />
    <html>
    <head>
    <TITLE>测试</TITLE>
    <STYLE>
    body,table{font-size:9pt}
    A:link {
    COLOR: #000084; TEXT-DECORATION: none
    }
    A:visited {
    COLOR: #000084; TEXT-DECORATION: none
    }
    A:hover {
    COLOR: black; TEXT-DECORATION: underline
    }
    .ourfont {
    FONT-SIZE: 9pt
    }
    </STYLE>
    </head>
    <body bgcolor=#eff3ff>
    <center>
    <font color=#000084><h3>Test for Test</h3></font>
    <hr width=600 color=#b5dbff>
    <br>
    <%
    ResultSet rs0 = sqlbean.executeQuery("select count(*) from UserList );
    rs0.next();
    long data_num=rs0.getLong(1);
    long Current_Page = 0;
    String currentpage=(String)request.getParameter("currentpage");
    if (currentpage != null && !currentpage.equals(""))
    {
    Current_Page = Integer.parseInt(request.getParameter("currentpage"));
    }
    String Query_Page=(String)request.getParameter("Query_Page");
    if (Query_Page!=null && !Query_Page.equals(""))
    {
    Current_Page = Integer.parseInt(request.getParameter("Query_Page"))-1;
    }
    PageCt.Init(Current_Page,data_num);
    long l_start = PageCt.getStart();
    long l_end = PageCt.getEnd();
    //查询记录
    ResultSet rs = sqlbean.executeQuery("select * from UserList " );
    long i=0;
    while((i<l_start) && rs.next())
    {
    i++;
    }
    //输出查询结果
    long j=0;
    while(rs.next() && (i<l_end))
    {
    j=i+1;
    String col2 = rs.getString(2);
    String col3 = rs.getString(3);
    String col4 = rs.getString(4);
    String col5 = rs.getString(5);
    String col6 = rs.getString(6);
    String col7 = rs.getString(7);
    String col8 = rs.getString(8);
    //打印所显示的数据
    out.println("<table border=0 width=600>");
    out.println("<tr><td colspan=2><font color=#000084>" + j + "、"+(col2==null?"":col2)+"</font></td></tr><tr><td colspan=2>答案:"+(col3==null?"":col3)+"</td></tr>");
    out.println("<tr><td> 选项1:"+(col4==null?"":col4)+"</td><td> 选项2:"+(col5==null?"":col5)+"</td></tr>");
    out.println("<tr><td> 选项3:"+(col6==null?"":col6)+"</td><td> 选项4:"+(col7==null?"":col7)+"</td></tr>");
    if (col8!=null && !col8.equals(""))
    {
    out.println("<tr><td colspan=2>备注:"+col8+"</td></tr>");
    }
    out.println("</table><br>");
    i++;
    }
    %>
    <table width=600>
    <tr bgcolor=#b5dbff>
    <form method=GET action=index.jsp>
    <td width=80 align=center valign=bottom>共 <%=PageCt.getTotalnum()%> 条</td>
    <td width=80 align=center valign=bottom><%=PageCt.getCurpage()+1%>/<%=PageCt.getTotalpage()%> 页</td>
    <td width=120 align=center>查看第 <input type=text name=Query_Page size=3> 页</td>
    <td width=50 align=center valign=bottom><a href=index.jsp?currentpage=<%=PageCt.getPrepage()%>>上页</a></td>
    <td width=50 align=center valign=bottom><a href=index.jsp?currentpage=<%=PageCt.getNextpage()%>>下页</a>
    </td>
    </tr>
    </table>
    <br><br><br>
    <table cellspacing=20>
    <tr>
    <td>问题包含<input type=text name=question_str size=10 value=<% if (question_str != null) out.println(question_str); %> ></td>
    <td>答案包含<input type=text name=answer_str size=10 value=<% if (answer_str != null) out.println(answer_str); %> ></td>
    <td>选项包含<input type=text name=sel_str size=10 value=<% if (sel != null) out.println(sel); %> ></td>
    </tr>
    <tr>
    <td colspan=3 align=center><input type=submit value=查询></td>
    </tr>
    </form>
    </table>
    <br><br>
    <a href="insert.jsp">添加</a>
    <center>
    </body>
    </html>
  • 相关阅读:
    关于用户体验的几张图片
    上下翻滚JS特效代码
    关注程序员健康之——缺失营养时的六种信号
    C#基础知识系列之——for循环
    关于程序中的需求的变化,责任的分配
    Silverlight学习之——Canvas对象
    还是觉得应该动手写点东西....
    怎样理解“道不同,不相为谋”这句话呢。。。
    UML图中最基本的是类图
    .NET中各种数据库连接大全
  • 原文地址:https://www.cnblogs.com/encounter/p/2189262.html
Copyright © 2011-2022 走看看