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

📄 第8章(1).txt

📁 《JSP 实用教程》源代码,内含各章实例代码
💻 TXT
📖 第 1 页 / 共 2 页
字号:
       { return buffer;
       }
    }
}

用户订购页面使用的beans(该beans负责填写订购单):
OrderForm.java:
import java.sql.*;
public class OrderForm
{   String logname,  //用户名。
           realname, //真实姓名。
           order_number,//图书订购号
           phone,
           address,
           book_name, //书名。
           mount;     //数量。
    Connection con;
    Statement sql; 
    ResultSet rs;
    public OrderForm()
    {  //加载桥接器:
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
    }
   //设置属性值、获取属性值的方法:
  public void setLogname(String name)
    {  logname=name;
    }
   public String getLogname()
    {return logname;
    }
  public void setRealname(String name)
    {  realname=name;
    }
    public String getRealname()
    {return realname;
    }
  public void setOrder_number(String number)
    {  order_number=number;
    }
  public String getOrder_number()
    {return order_number;
    }
  public void setBook_name(String name)
    {  book_name=name;
    }
  public String getBook_name()
    {return book_name;
    }
  public void setPhone(String ph)
    {  phone=ph;
    }
   public String getPhone()
    {return phone;
    }
   public void setAddress(String ad)
    {  address=ad;
    }
   public String getAddress()
    {return address;
    }
   public void setMount(String n)
    {  mount=n;
    }
   public String getMount()
    {return mount;
    }
  //向数据库的orderform订单表添加订购记录:
   public String setOrderBook()
    { try{con=DriverManager.getConnection("jdbc:odbc:shop","","");
          sql=con.createStatement();
          String s=
           "'"+logname+"'"+","+"'"+realname+"'"+","+"'"+order_number+"'"+","+"'"+
            book_name+"'"+","+"'"+mount+"'"+","+"'"+phone+"'"+","+"'"+address+"'";
          String condition="INSERT INTO orderform VALUES"+"("+s+")";
          sql.executeUpdate(condition);
          con.close();
         return "该书被添加到你的订单";
       }
     catch(SQLException e)
       { return "你已经订购了该书,请去修改订单后再订购";
       }
    }
}


订购图书页面(效果如图8.8所示)
buybook.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="BuyBook" %> 
<%@ page import="Login" %>
<%@ page import="OrderForm" %>
<jsp:useBean id="login" class="Login" scope="session" >
</jsp:useBean>
<jsp:useBean id="book" class="BuyBook" scope="session" >
</jsp:useBean>
<jsp:useBean id="orderform" class="OrderForm" scope="page" >
</jsp:useBean>
<%! //处理字符串的方法:
  public String codeString(String s)
    { String str=s;
       try{byte b[]=str.getBytes("ISO-8859-1");
           str=new String(b);
           return str;
         }
      catch(Exception e)
         { return str;
         }
    }
%>
<HTML>
<BODY ><Font size=1>
<%@ include file="head.txt" %>
<% //如果客户直接进入该页面将被转向登录页面。
   if(session.isNew())
    {response.sendRedirect("userLogin.jsp"); 
    }
   //如果没有成功登录将被转向登录页面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("userLogin.jsp"); 
     }
%>
<%String str=response.encodeURL("buybook.jsp");
%>
<FORM action="<%=str%>" Method="post" >
  <P>输入要订购的书的序列号:
  <Input type=text name="id">
  <Input type=submit name="g" value="提交">
</Form>
<jsp:setProperty  name= "book"  property="id"  param="id" />
 查询到如下记录:<BR>
<% StringBuffer b=book.getMessageBybook_id();
%>
<%=b%>
<P>如果准备订购该书,请填写订单,点击"添加到订单"按钮<BR>
 <%if((book.getId())!=0)
   {%> <FORM action="<%=str%>" method=post>
       <BR>您的用户名<Input TYPE=text name=logname value="<%=login.getLogname()%>" >*
       <BR>您的密码<Input TYPE=password name=password>*
       <BR>订购数量<Input TYPE=text name=mount value=1>(单位:册)
       <Input type=submit name="k" value="提交订单">
       </FORM>
   <%}
 %>
 <% if((book.getId())!=0)
     { String name=request.getParameter("logname");//获取在表单中提交的用户名。
        if(name==null)
           {name="";
           }
       name=codeString(name);
      String word=request.getParameter("password");//获取在表单中提交的密码。
        if(word==null)
           {word="";
           }
       word=codeString(word);
       String mount=request.getParameter("mount");//获取在表单中提交的密码。
       mount=codeString(mount);
       //判断提交的名字和密码是否正确:
       //如果正确就初始化orderform的值,并添加数据到订单。
       if((name.equals(login.getLogname()))&&(word.equals(login.getPassword())))
         {  
         %>
  <jsp:setProperty  name= "orderform"  property="logname" value="<%=login.getLogname()%>"/>
  <jsp:setProperty  name= "orderform"  property="realname" value="<%=login.getRealname()%>"/> 
        <jsp:setProperty  name= "orderform"  
                        property="order_number" value="<%=book.getOrder_number()%>"/> 
         <jsp:setProperty  name= "orderform" 
                        property="book_name" value="<%=book.getBook_name()%>"/> 
         <jsp:setProperty  name= "orderform"  property="mount" value="<%=mount%>"/>
         <jsp:setProperty  name= "orderform"  property="phone" value="<%=login.getPhone()%>"/> 
      <jsp:setProperty  name= "orderform"  property="address" value="<%=login.getAddress()%>"/>
         <% String ms=orderform.setOrderBook();
            out.print("<BR>"+ms);
         }
       else
        { out.print("<BR>"+"您必须输入正确的密码和用户名");
        }
     }
 %>
</Font>
</BODY>
</HTML>
查看订单页面(效果如图8.9所示)
showOrderForm.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="Login" %>
<jsp:useBean id="login" class="Login" scope="session" >
</jsp:useBean>
<% //如果客户直接进入该页面将被转向登录页面。
   if(session.isNew())
    {response.sendRedirect("userLogin.jsp"); 
    }
   //如果没有成功登录将被转向登录页面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("userLogin.jsp"); 
     }
%>
<HTML>
<BODY ><Font size=1>
<P>你的订单:
<%  String logname=login.getLogname();
           if(logname==null)
              {logname="";
              }
    Connection con;
    Statement sql; 
    ResultSet rs;
    try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        }
    catch(ClassNotFoundException e){}
    try{ con=DriverManager.getConnection("jdbc:odbc:shop","","");
         sql=con.createStatement();
         String condition="SELECT * FROM orderform WHERE logname = "+"'"+logname+"'";
         rs=sql.executeQuery(condition);
        out.print("<Table Border>");
            out.print("<TR>");
            out.print("<TH width=50>"+"<Font size=1>"+"用户名");
            out.print("<TH width=50>"+"<Font size=1>"+"姓名");
             out.print("<TH width=160>"+"<Font size=1>"+"订购号");
            out.print("<TH width=160>"+"<Font size=1>"+"书名");
            out.print("<TH width=60>"+"<Font size=1>"+"订购数量");
            out.print("<TH width=60>"+"<Font size=1>"+"电话");
            out.print("<TH width=160>"+"<Font size=1>"+"地址");
            out.print("</TR>");
       while(rs.next())
           { out.print("<TR>");
             out.print("<TD >"+"<Font size=1>"+rs.getString(1)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(2)+"</TD>");
             out.print("<TD >"+"<Font size=1>"+rs.getString(3)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(4)+"</TD>");
             out.print("<TD >"+"<Font size=1>"+rs.getString(5)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(6)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(7)+"</TD>");       
            out.print("</TR>") ;  
            }
       out.print("</Table>");
       con.close();
       }
     catch(SQLException e)
       { 
       }
%>
</BODY>
</HTML>

选择修改方式的页面(效果如图8.10所示)
modifyForm.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="Login" %>
<jsp:useBean id="login" class="Login" scope="session" >
</jsp:useBean>
<% //如果客户直接进入该页面将被转向登录页面。
   if(session.isNew())
    {response.sendRedirect("userLogin.jsp"); 
    }
   //如果没有成功登录将被转向登录页面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("userLogin.jsp"); 
     }
%>
<HTML>
<BODY ><Font size=1>
<%@ include file="head.txt" %>
<P>你的订单:
<%  String logname=login.getLogname();
           if(logname==null)
              {logname="";
              }
    Connection con;
    Statement sql; 
    ResultSet rs;
    try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        }
    catch(ClassNotFoundException e){}
    try{ con=DriverManager.getConnection("jdbc:odbc:shop","","");
         sql=con.createStatement();
         String condition="SELECT * FROM orderform WHERE logname = "+"'"+logname+"'";
         rs=sql.executeQuery(condition);
        out.print("<Table Border>");
            out.print("<TR>");
            out.print("<TH width=50>"+"<Font size=1>"+"用户名");
            out.print("<TH width=50>"+"<Font size=1>"+"姓名");
             out.print("<TH width=160>"+"<Font size=1>"+"订购号");
            out.print("<TH width=160>"+"<Font size=1>"+"书名");
            out.print("<TH width=60>"+"<Font size=1>"+"订购数量");
            out.print("<TH width=60>"+"<Font size=1>"+"电话");
            out.print("<TH width=160>"+"<Font size=1>"+"地址");
            out.print("</TR>");
       while(rs.next())
           { out.print("<TR>");
             out.print("<TD >"+"<Font size=1>"+rs.getString(1)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(2)+"</TD>");
             out.print("<TD >"+"<Font size=1>"+rs.getString(3)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(4)+"</TD>");
             out.print("<TD >"+"<Font size=1>"+rs.getString(5)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(6)+"</TD>"); 
             out.print("<TD >"+"<Font size=1>"+rs.getString(7)+"</TD>"); 
            out.print("</TR>") ;          
            }
       out.print("</Table>");
       con.close();
       }
     catch(SQLException e)
       {  }
%>
<P>修改订单:
<%String str1=response.encodeURL("deletForm.jsp");
  String str2=response.encodeURL("changeForm.jsp");
%>
     <FORM action="<%=str1%>" method=post>
       <BR>输入订购号<Input TYPE=text name=order_number >*
       <Input type=submit name="k" value="提交删除">
     </FORM>
    <FORM action="<%=str2%>" method=post>
       <BR>输入订购号<Input TYPE=text name=order_number >*
       <BR>输入新定数<Input TYPE=text name=mount >*
       <Input type=submit name="p" value="提交修改">
     </FORM>
</BODY>
</HTML>

删除订购单页面(效果如图8.11所示)
deleteForm.jsp:
<%@ page contentType="text/html;charset=GB2312" %> 
<%@ page import="java.sql.*" %>
<%@ page import="Login" %>
<jsp:useBean id="login" class="Login" scope="session" >
</jsp:useBean>
<html>
<BODY>
<% //如果客户直接进入该页面将被转向登录页面。
   if(session.isNew())
    {response.sendRedirect("userLogin.jsp"); 
    }
   //如果没有成功登录将被转向登录页面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("userLogin.jsp"); 
     }
%>
<% //获取订单号:
   String order_number=request.getParameter("order_number");
          if(order_number==null)
            {order_number="";
            }
     byte b[]=order_number.getBytes("ISO-8859-1");
     order_number=new String(b);
    Connection con=null;
    Statement sql=null;
    ResultSet rs=null;
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
       try
      {con=DriverManager.getConnection("jdbc:odbc:shop","","");
       sql=con.createStatement();
       String condition=
              "DELETE  FROM orderform WHERE order_number="+"'"+order_number+"'";
       sql.executeUpdate(condition);  //删除。
       out.print("<BR>"+"订单条款被删除一项");
      }
      catch(SQLException e)
       { out.print("<BR>"+"删除失败");
       }
%>
</BODy>
</HTML>

修改订购数量页面(效果如图8.12所示)
changeForm.jsp
<%@ page contentType="text/html;charset=GB2312" %> 
<%@ page import="java.sql.*" %>
<%@ page import="Login" %>
<jsp:useBean id="login" class="Login" scope="session" >
</jsp:useBean>
<html>
<BODY>
<%@ include file="head.txt" %>
<% //如果客户直接进入该页面将被转向登录页面。
   if(session.isNew())
    {response.sendRedirect("userLogin.jsp"); 
    }
   //如果没有成功登录将被转向登录页面
   String success=login.getSuccess();
         if(success==null)
         {success="";
         } 
   if(!(success.equals("ok")))
     {response.sendRedirect("userLogin.jsp"); 
     }
%>
<% //获取订单号:
   String order_number=request.getParameter("order_number");
          if(order_number==null)
            {order_number="";
            }
     byte b[]=order_number.getBytes("ISO-8859-1");
     order_number=new String(b);
   //获取新的定数:
   String newMount=request.getParameter("mount");
          if(newMount==null)
            {newMount="0";
            }
     byte c[]=newMount.getBytes("ISO-8859-1");
     newMount=new String(c);
    Connection con=null;
    Statement sql=null;
    ResultSet rs=null;
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
       try
      {con=DriverManager.getConnection("jdbc:odbc:shop","","");
       sql=con.createStatement();
       String condition=
    "UPDATE orderform SET mount = "+newMount+" WHERE order_number="+"'"+order_number+"'";
       //更新订单:
       sql.executeUpdate(condition);
       out.print("<BR>"+"订单被更新");
      }
      catch(SQLException e)
       { out.print("<BR>"+"更新失败");
       }
%>
</BODy>
</HTML>

⌨️ 快捷键说明

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