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

📄

📁 清华版的jsp基础程序 对新手很有用
💻
📖 第 1 页 / 共 2 页
字号:
showByPage.jsp:(效果如图5.28所示)
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY>
 <%! int pageSize=3; //每页显示的记录数。
     int pageCount=0; //分页后的总页数。
 %> 
<%-- 客户通过表单提交欲要显示的页码数--%>
<FORM action="" method=get >
 输入页码数<Input Type=text name=showPage size=4 >
   <Input Type=submit name=g value=提交>
 </FORM>
<%  Connection con;
    Statement sql; 
    ResultSet rs;
    try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       }
    catch(ClassNotFoundException 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 lastRow=rs.getRow();
        //计算分页后的总页数:
        pageCount=(lastRow%pageSize==0)?(lastRow/pageSize):(lastRow/pageSize+1);
        //当前显示的初始页数:
        int showPage=1;
        //告知客户总页数:
      %>
        <P> 共有<%=pageCount%>页
        <BR>每页显示<%=pageSize%>条记录.
      <% //获取客户想要显示的页数:
          String integer=request.getParameter("showPage");
               if(integer==null)
                  { integer="1";
                  } 
           try {showPage=Integer.parseInt(integer);  
               }
           catch(NumberFormatException e)
               {showPage=1;
               }
          if(showPage<=1)
             {showPage=1;
             }
          if(showPage>=pageCount)
             {showPage=pageCount;
             }
      %>
        <BR>目前显示第<%=showPage%>页  
      <% //如果要显示第showPage页,那么游标应移到posion的值是:
         int posion=(showPage-1)*pageSize+1;
          rs.absolute(posion); // 设置游标的位置
          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<=pageSize;i++)
        { out.print("<TR>");
             out.print("<TD >"+rs.getString(1)+"</TD>"); 
             out.print("<TD >"+rs.getString(2)+"</TD>");
             out.print("<TD >"+rs.getInt("数学成绩")+"</TD>"); 
             out.print("<TD >"+rs.getInt("英语成绩")+"</TD>");
            out.print("<TD >"+rs.getInt("物理成绩")+"</TD>");   
         out.print("</TR>") ; 
          rs.next();  
         }
       out.print("</Table>");
      con.close();
     }
   catch(SQLException e1) {}
 %>
</BODY>
</HTML>

例子11(效果如图5.29所示)
Example5_11.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY>
 <% Connection con=null;
    Statement sql=null; 
    ResultSet rs=null;
    try{Class.forName("oracle.jdbc.driver.OracleDriver"); 
       }
    catch(ClassNotFoundException e){}
    try
      {  con=
DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.35:1521:Lea","scott","tiger");
         sql=con.createStatement();
         rs=sql.executeQuery("select * from emp");
         out.print("<Table Border>");
         out.print("<TR>");
            out.print("<TH width=100>"+"EMPNO");
            out.print("<TH width=50>"+"Ename");
         out.print("</TR>");
       while(rs.next())
       { out.print("<TR>");
             int n=rs.getInt(1); 
             out.print("<TD >"+n+"</TD>");
            String e=rs.getString(2); 
             out.print("<TD >"+e+"</TD>");
         out.print("</TR>") ;  
        }
        out.print("</Table>");
        con.close();
     }
   catch(SQLException e1) {out.print(""+e1);}
 %>
</BODY>
</HTML>

例子12(效果如图5.33所示)
Example5_12.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY>
 <% Connection con;  
     Statement sql;  
     ResultSet rs;
    try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      }
    catch(ClassNotFoundException e){}
    try { con=DriverManager.getConnection("jdbc:odbc:star","","");
         sql=con.createStatement();
         rs=sql.executeQuery("SELECT * FROM 品名 ");
         out.print("<Table Border>");
         out.print("<TR>");
            out.print("<TH width=100>"+"品名");
            out.print("<TH width=50>"+"单位");
            out.print("<TH width=50>"+"单价");
         out.print("</TR>");
       while(rs.next())
       { out.print("<TR>");
            String name=rs.getString(1); 
             out.print("<TD >"+name+"</TD>");
            String  unit=rs.getString(2); 
             out.print("<TD >"+unit+"</TD>");
            String  unitprice=rs.getString(3); 
            out.print("<TD >"+unitprice+"</TD>");
         out.print("</TR>") ;          
        }
        out.print("</Table>");
        con.close();
     }
   catch(SQLException e1) {}
 %>
</BODY>
</HTML>

例子13(效果如图5.34、5.35所示)
Example5_13.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY>
 <%! //声明一个共享的连接对象:
    Connection con=null;
  %>
 <% Statement sql=null; 
    ResultSet rs=null; 
    //第一个客户负责建立连接对象:
    if(con==null)
      { try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
           }
           catch(ClassNotFoundException e)
           {out.print(e);
           }
        try {con=DriverManager.getConnection("jdbc:odbc:moon","sa","");
           sql=con.createStatement();
           rs =sql.executeQuery("SELECT * FROM students");
           out.print("i am  first");
          }
        catch(SQLException e) 
          {out.print(e);
          }
      }
     //其它客户通过同步块使用这个连接:
     else
      { synchronized(con)
        {  try { sql=con.createStatement();
               rs =sql.executeQuery("SELECT * FROM students");
               out.print("i am not first");
               }
          catch(SQLException e) 
               {out.print(e);
               }
        }
      }
    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>");
       while(rs.next())
       { 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>") ;          
        }
      out.print("</Table>");
    }
   catch(SQLException e1) {}
 %>
</BODY>
</HTML>

vote.jsp(效果如图5.39所示):
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY>
 <%  StringBuffer nameList=new StringBuffer();
      Connection con;
      Statement sql; 
      ResultSet rs;
      try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        }
      catch(ClassNotFoundException e){}
      try{ con=DriverManager.getConnection("jdbc:odbc:vote","","");
          sql=con.createStatement();
          rs=sql.executeQuery("SELECT * FROM people");
          nameList.append("<FORM action=startvote.jsp  Method=post>");
          nameList.append("<Table Border>");
          nameList.append("<Table Border>");
          nameList.append("<TR>");
          nameList.append("<TH width=100>"+"姓名");
          nameList.append("<TH width=50>"+"投票选择");
          nameList.append("</TR>");
          while(rs.next())
             { nameList.append("<TR>");
               String name=rs.getString(1);
               nameList.append("<TD >"+name+"</TD>"); 
               String s="<Input type=radio name=name value="+name+" >";
               nameList.append("<TD >"+s+"</TD>");   
               nameList.append("</TR>") ;          
             }
          nameList.append("</Table>");
          nameList.append("<Input Type=submit value=提交>");
         nameList.append("</FORM ");
        con.close();
        out.print(nameList);
       }
      catch(SQLException e1) {}
%>
</BODY>
</HTML>
startvote.jsp(效果如图5.40、5.41所示):
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<html>
<body>
<%! //记录总票数的变量:
    int total=0;
    //操作总票数的同步方法:
    synchronized void countTotal()
        { total++; 
        }   
%>
<% boolean vote=true;//决定用户是否有权投票的变量。
    //得到被选择的候选人名字:
    String name="";
    name=request.getParameter("name");
      if(name==null)
       {name="?";
       }
    byte a[]=name.getBytes("ISO-8859-1");
    name =new String(a);
    //得到投票人的IP地址:
    String IP=(String)request.getRemoteAddr();
    //加载桥接器:
     try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        }
     catch(ClassNotFoundException e){}
    Connection con=null;
    Statement sql=null;
    ResultSet rs=null;
   //首先查询IP表,判断该用户的IP地址是否已经投过票:
    try {  con=DriverManager.getConnection("jdbc:odbc:vote","","");
          sql=con.createStatement();
          rs=sql.executeQuery("SELECT * FROM IP WHERE IP = "+"'"+IP+"'");
          int row=0;
         while(rs.next())
            { row++;
            }
          if(row>=1)
            { vote=false;     //不允许投票。
            } 
         }
    catch(SQLException e)
       { }
if(name.equals("?")) 
    { out.print("您没有投票,没有权利看选举结果");
    }
 else 
  { 
    if(vote)
    {   out.print("您投了一票");
         //将总票数加1:
         countTotal();
        //通过连接数据库,给该候选人增加一票,
        //同时将自己的IP地址写入数据库 。
       try
         { rs=sql.executeQuery("SELECT * FROM people WHERE name = "+"'"+name+"'");
           rs.next();
           int count=rs.getInt("count");
           count++; 
           String condition=
              "UPDATE people SET count = "+count+" WHERE name="+"'"+name+"'" ;
         //执行更新操作(投票计数):
          sql.executeUpdate(condition);
          //将IP地址写入IP表:
         String to=
         "INSERT INTO IP VALUES"+"("+"'"+IP+"'"+")";
          sql.executeUpdate(to);
         }
       catch(SQLException e)
         { out.print(""+e);
         }
      //显示投票后的表中的记录:
       try{ rs=sql.executeQuery("SELECT * FROM people");
            out.print("<Table Border>");
            out.print("<TR>");
            out.print("<TH width=100>"+"姓名");
            out.print("<TH width=50>"+"得票数"); 
             out.print("<TH width=50>"+"总票数:"+total); 
            out.print("</TR>");
         while(rs.next())
            {  out.print("<TR>");
               out.print("<TD >"+rs.getString(1)+"</TD>");
               int count=rs.getInt("count");
               out.print("<TD >"+count+"</TD>");
               double b=(count*100)/total;  //得票的百分比。
               out.print("<TD >"+b+"%"+"</TD>");
               out.print("</TR>") ;  
            }
           out.print("</Table>");
           con.close();
         }
     catch(SQLException e)
        { }
   }
  else
   {out.print("您已经投过票了");
   }
 }
%>
</BODY>
</HTML>

main.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY BGcolor=yellow>
<CENTER>
<FONT SIZE=2>
<P>成绩录入查询系统
<BR>
<BR><A HREF="login.jsp">录入人员登录</A>
<BR><A HREF="inputMessage.jsp">录入学生的基本信息</A>
<BR><A HREF="inputResult.jsp">录入学生成绩</A>
<BR><A HREF="modifySecret.jsp">修改密码</A>
<BR><A HREF="inquire.jsp">查询成绩</A>
</FONT>
</CENTER>
</BODY>
</HTML>

登录页面(效果如图5.44所示)
login.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY  bgcolor=pink ><Font size=1>
 <P>成绩输入人员登录
<FORM action="login.jsp" Method="post">
<BR>输入帐号:
<BR><Input type=text name="account">
<BR>输入密码:
<BR><Input type=password name="secret">
<BR><Input type=submit name="g" value="提交">
</FORM>
<%  //获取提交的帐号:
    String account=request.getParameter("account");
       if(account==null)
            {account="";
            }
       byte b[]=account.getBytes("ISO-8859-1");
       account=new String(b);
    //获取提交的密码:
    String secret=request.getParameter("secret");
       if(secret==null)
            {secret="";
            }
     byte c[]=secret.getBytes("ISO-8859-1");
     secret=new String(c);
    //查询数据库信息,验证身份:
    Connection con=null;
    Statement sql=null;
    ResultSet rs=null;
    try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
    catch(ClassNotFoundException event){}
    try
      {con=DriverManager.getConnection("jdbc:odbc:manage","","");

⌨️ 快捷键说明

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