⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 showlist.jsp

📁 黑魔方JSP基础教程源代码(耿祥义编著)是这里有课件和jsp源代码
💻 JSP
字号:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="tom.jiafei.PageNumber" %>
<%@ page import="java.io.*" %>
<jsp:useBean id="handlePage" class="tom.jiafei.PageNumber" scope="session" >
</jsp:useBean>
<HTML>
<BODY bgcolor=cyan><Size=3>
 <%! //声明一个共享的连接对象:
    Connection con=null;
    //显示数据库记录的方法:
    public void showList(ResultSet rs,javax.servlet.jsp.JspWriter  out, int n)
     {
      try
      { 
        out.print("<Table Border>");
         out.print("<TR>");
            out.print("<TH width=100>"+"学号");
            out.print("<TH width=100>"+"姓名");
            out.print("<TH width=50>"+"数学成绩");
            out.print("<TH width=50>"+"英语成绩");
            out.print("<TH width=50>"+"物理成绩");
         out.print("</TR>");
       for(int i=1;i<=n;i++)
       {  
           out.print("<TR>");
           String  number=rs.getString(1); 
             out.print("<TD >"+number+"</TD>"); 
           String  name=rs.getString(2); 
             out.print("<TD >"+name+"</TD>");
           int  math=rs.getInt("数学成绩"); 
             out.print("<TD >"+math+"</TD>"); 
           int  english=rs.getInt("英语成绩"); 
             out.print("<TD >"+english+"</TD>");
           int  physics=rs.getInt("物理成绩"); 
             out.print("<TD >"+physics+"</TD>");   
        out.print("</TR>") ;
         rs.next();          
        }
       out.print("</Table>");
      }
      catch(Exception e1) {}
    }
  %>
 <% Statement sql=null; 
    ResultSet rs=null; 
   int rowCount=0;   //总的记录数。
    //第一个客户负责建立连接对象:
    if(con==null)
      {
         try{
             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
           }
           catch(ClassNotFoundException e)
           {   out.print(e);
           }
        try
          {
           con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
           sql=
    con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
           //返回可滚动的结果集:
           rs=sql.executeQuery("SELECT * FROM students");
           //将游标移动到最后一行:
            rs.last();
           //获取最后一行的行号:
           int number=rs.getRow();
           //获取记录数:
            rowCount=number;
           //设置每页显示的记录数:
           handlePage.setPageSize(2);
           //计算总页数:
           handlePage.setPageCount(rowCount,handlePage.getPageSize());
           out.print("共有"+handlePage.getPageCount()+"页,"); 
           out.print("每页显示"+handlePage.getPageSize()+"条记录");  
          }
        catch(SQLException e) 
          {out.print(e);
          }
      }
     //其它客户通过同步块使用这个连接:
     else
      { 
        synchronized(con)
        { 
         try {
             sql=
   con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
           //返回可滚动的结果集:
           rs=sql.executeQuery("SELECT * FROM students");
           //将游标移动到最后一行:
            rs.last();
           //获取最后一行的行号:
           int number=rs.getRow();
           //获取记录数:
            rowCount=number;
           //设置每页显示的记录数:
           handlePage.setPageSize(2);
           //计算总页数:
           handlePage.setPageCount(rowCount,handlePage.getPageSize());
           out.print("共有"+handlePage.getPageCount()+"页,"); 
           out.print("每页显示"+handlePage.getPageSize()+"条记录"); 
          }
        catch(SQLException e) 
          {out.print(e);
          }
        }
      }
  %> 
  <%--选择显示某页的表单 --%>
 <% String str=response.encodeRedirectURL("showList.jsp");
 %>
  <Form action="<%=str%>" method="post" >
  显示下一页:<Input Type="hidden" name="a" value="next">
    <Input type=submit value="next">
  </FORM>
  <Form action="<%=str%>" method="post" >
  显示上一页:<Input Type="hidden" name="a" value="previous">
  <Input type="submit" value="previous">
  </FORM>
  <Form action="<%=str%>" method="post" >
  输入欲要显示的页<Input type="text"  name="a" value="1">
  <Input type="submit" value="submit">
  </FORM>
 <% //获取表单提交的信息:
     String s=request.getParameter("a");
       if(s==null)
          {s="1";
          }
    if(s.equals("next"))
        {
             int n=handlePage.getShowPage(); //获取目前的页数。
              n=(n+1); //将页数增1。
           if(n>handlePage.getPageCount())
              { n=1;
              }
           handlePage.setShowPage(n);              //显示该页
          out.print("目前显示第"+handlePage.getShowPage()+"页");
          //将游标移到:
          rs.absolute((n-1)*handlePage.getPageSize()+1);
          //显示第该页的内容:
         showList(rs,out,handlePage.getPageSize());        
         }
    else if(s.equals("previous"))
        { 
           int n=handlePage.getShowPage(); //获取目前的页数。
              n=(n-1); //将页数减1。
          if(n<=0)
              {
                n=handlePage.getPageCount();
              }    
           handlePage.setShowPage(n);              //显示该页
          out.print("目前显示第"+handlePage.getShowPage()+"页");
          //将游标移到:
          rs.absolute((n-1)*handlePage.getPageSize()+1);
          //显示第该页的内容:
         showList(rs,out,handlePage.getPageSize());  
       }
    else
        { 
          int m=Integer.parseInt(s);
          handlePage.setShowPage(m);
          out.print("目前显示第"+handlePage.getShowPage()+"页");
          int n=handlePage.getShowPage();
           //将游标移到 (n-1)*handlePage.getPageSize()+1;
          rs.absolute((n-1)*handlePage.getPageSize()+1);
           //显示该页的内容:
            showList(rs,out,handlePage.getPageSize());
       }
%>
</BODY>
</HTML>
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -