Jsp分页技术直接分页的简单方法

Jsp分页技术直接分页的简单方法

调试环境和使用软件

本次实验使用的是Eclipse平台,服务器使用的是tomcat v7.0,数据库使用的是SQL。

1.直接分页的优缺点

1.优点:直观,易于理解,并且比较灵活,代码比较简单。

2.缺点:这种方式只适合对单一的或极少量的结果集进行分析,实现代码不能够被重用,不适合用于实现数据量大、数据表多的结果集的分页。

2.基本代码

<%@ page contentType="text/html;charset=UTF-8"%>



<%

   java.sql.Connection sqlCon; //数据库连接对象

   java.sql.Statement sqlStmt; //SQL语句对象

   java.sql.ResultSet sqlRst;  //结果集对象



   java.lang.String strCon;    //数据库连接字符串

   java.lang.String strSQL;    //SQL语句



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

   int intRowCount;           //记录总数

   int intPageCount;          //总页数

   int intPage;               //待显示页码



   java.lang.String strPage; 



   int i;



   //设置一页显示的记录数

   intPageSize = 10;



   //取得待显示页码

   strPage = request.getParameter("page");



   if(strPage==null){

       //表明在QueryString中没有page这一个参数,此时显示第一页数据

       intPage = 1;

   } else {

       //将字符串转换成整型

       intPage =java.lang.Integer.parseInt(strPage);

       if(intPage<1) intPage = 1;

   }





   //装载JDBC驱动程序

   Class.forName("com.mysql.jdbc.Driver").newInstance();  

   String username = "root"; //用户名

   String password = "123"; //密码

   String url="jdbc:mysql://localhost:3306/sys";

   //连接数据库

   sqlCon=java.sql.DriverManager.getConnection(url,username,password);

   //创建语句对象

   sqlStmt =sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);

   //创建查询语句

   strSQL = "select * from dic";

   //执行SQL语句并获取结果集

   sqlRst = sqlStmt.executeQuery(strSQL);



   //获取记录总数

   sqlRst.last();

   intRowCount = sqlRst.getRow();

   //记算总页数

   intPageCount = (intRowCount+intPageSize-1) /intPageSize;

   //调整待显示的页码

   if(intPage>intPageCount) intPage = intPageCount;

%>





<html>



    <head>

        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

        <title>数据分页显示title>

    head>



    <body>

        <center><table border=1 cellspacing=0 cellpadding=0>

            <tr>

               <td align=center width=100% colspan=5 bgcolor=#3399ff>

                    <font color=#ffffff>成员列表font>

               td>

            tr>

            <tr>

                <th>单词th>

                <th>词性th>

                <th>汉语示意th>

            tr>



            <% if(intPageCount>0) {

                   //将记录指针定位到待显示页的第一条记录上

                   sqlRst.absolute((intPage-1)* intPageSize + 1);

                   //显示数据

                   i = 0;

                   while(i



            <tr>

                <td> <%= sqlRst.getString(1) %> td>

                <td> <%= sqlRst.getString(2) %> td>

                <td> <%= sqlRst.getString(3) %> td>

            tr>



            <% sqlRst.next();

               i++;

               }

               }

            %>

        table>center><br>



    <center><%=intPage%>页 共<%=intPageCount%><% //以下是分页的“上一页”“下一页”,有上一页就有链接,没有就为文字,下一页同理%>

        <% if(intPage>1){ %>

            <a href="NewFile.jsp?page=<%=intPage-1%>">上一页a>

        <% }else{ %>

            上一页

        <%}%>



        <% if(intPage

            <a href="NewFile.jsp?page=<%=intPage+1%>">下一页a>

        <% }el 
e{ %>

            下一页

        <%}%>

     <center>

    body>



html>



<%

   //关闭结果集

   sqlRst.close();

   //关闭SQL语句对象

   sqlStmt.close();

   //关闭数据库

   sqlCon.close();

%>

3. 关键语句说明

   if(s 
 tr     
ag   
= 
null){

       //表明在QueryString中没有page这一个参数,此时显示第一页数据

       intPage = 1;

   } else {

       //将字符串转换成整型

       intPage =java.lang.Integer.parseInt(strPage);

       if(intPage<1) intPage = 1;

   }

这个语句用于判断打开网页是所处的页码数。如果为空,打开第一页。

        <% //以下是分页的“上一页”“下一页”,有上一页就有链接,没有就为文字,下一页同理%>

        <% if(intPage>1){ %>

            <a href="NewFile.jsp?page=<%=intPage-1%>">上一页a>

        <% }else{ %>

            上一页

        <%}%>



,![这里写图片描述](//img-blog.csdn.net/20180321221203197?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L3FxXzQwMTYyNzk3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70,![这里写图片描述](//img-blog.csdn.net/20180321221225501?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L3FxXzQwMTYyNzk3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)        <% if(intPage

            <a href="NewFile.jsp?page=<%=intPage+1%>">下一页a>

        <% }else{ %>

            下一页

        <%}%>

这个语句用于上下页跳转,其中关键是 a href 语句,程序中的语句用于单机上一页或下一页中使用,单机之后跳转并且页数加以或减一,另外加了一个if语句用于判断是否已经是最后一页或者第一页。
,

4. 运行结果

Jsp分页技术直接分页的简单方法_第1张图片

Jsp分页技术直接分页的简单方法_第2张图片

你可能感兴趣的:(Jsp分页技术直接分页的简单方法)