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

📄 第8章(1).txt

📁 第一章JSP简介 例子1(效果如图1.1所示) Example1_1.jsp: < @ page contentType="text/html charset=GB2312" &gt
💻 TXT
📖 第 1 页 / 共 2 页
字号:
第8章 网上书店
head.txt:
<table align="center" border="0" width="740" height="18" bgcolor=yellow cellspacing="1">
<tr>
<td width="100%">
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/showBookList.jsp")%>">书目浏览</a> | 
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/userRegister.jsp")%>">用户注册</a> | 
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/userLogin.jsp")%>">用户登录   </a> |
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/buybook.jsp")%>">订购图书     </a> | 
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/modifyForm.jsp")%>">修改订单  </a> | 
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/showOrderForm.jsp")%>">查看订单</a>|
 <a  href="<%=response.encodeURL("http://192.168.1.100:8080/modifyPassword.jsp")%>">修改密码 </a> |
 <a href="<%=response.encodeURL("http://192.168.1.100:8080/modifyMessage.jsp")%>">修改个人信息</a> |</td> 
 </tr>
 </table>

主页(效果如图8.5所示)
bookmain.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor =green>
<%@ include file="head.txt" %>
<H1>
 <CENTER> 欢迎光临网上书店</CENTER>
</BODY>
</HTML>

注册页面使用的beans
Register.java:
import java.sql.*;
public class Register
{   String logname,
           realname,
           password,
           email,
           phone,
           address;
    String message; 
    Connection con;
    Statement sql; 
    ResultSet rs;
    public Register()
    {  //加载桥接器:
       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 setPassword(String pw)
    {  password=pw;
    }
    public String getPassword()
    {return password;
    }
   public void setEmail(String em)
    {  email=em;
    }
    public String getEmail()
    {return email;
    }
   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 String getMessage()
    {return message;
    } 
   //添加记录到数据库的user表:
   public void addItem()
    {try{
        con=DriverManager.getConnection("jdbc:odbc:shop","","");
        sql=con.createStatement();
        String s=
        "'"+logname+"'"+","+"'"+realname+"'"+","+"'"+password+"'"+","+"'"+
          email+"'"+","+"'"+phone+"'"+","+"'"+address+"'";
        String condition="INSERT INTO user VALUES"+"("+s+")";
        sql.executeUpdate(condition);
        message="注册成功了";
        con.close();
       }
     catch(SQLException e)
       {message="你还没有注册,或该用户已经存在,请你更换一个名字";
       }
    }
}

注册页面(效果如图8.6所示)
userRegister.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="Register" %> 
<%! //处理字符串的方法:
  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" %>
<Font size=1>
<%String str=response.encodeURL("userRegister.jsp");
%>
<P>输入您的信息,带*号项必须填写:
<FORM action="<%=str%>" Method="post">
<BR>登录名称<Input type=text name="logname">*
<BR>真实姓名<Input type=text name="realname">*
<BR>设置密码<Input type=password name="password">*
<BR>电子邮件<Input type=text name="email">*
<BR>联系电话<Input type=text name="phone">*
<BR>通信地址<Input type=text name="address">*
<BR><Input type=submit name="g" value="提交">
</Form>
<jsp:useBean id="login" class="Register" scope="request" >
</jsp:useBean>
 <% //提交信息后,进行注册操作:
   String logname="",realname="",password="",email="",phone="",address="";
   if(!(session.isNew()))
    { logname=request.getParameter("logname");
      if(logname==null)
        {logname="";
        }
     logname=codeString(logname);
     realname=request.getParameter("realname");
       if(realname==null)
        {realname="";
        }
     realname=codeString(realname);
     password=request.getParameter("password");
         if(password==null)
        {password="";
        }
     password=codeString(password);
     email=request.getParameter("email");
         if(email==null)
        {email="";
        }
     email=codeString(email); 
     phone=request.getParameter("phone");
         if(phone==null)
        {phone="";
        }
     phone=codeString(phone); 
     address=request.getParameter("address");
        if(address==null)
        {address="";
        }
     address=codeString(address); 
   }
 %>
 <%   //为了以后处理汉字方便,我们采用了第1种方式初始化beans
   if(!(logname.equals(""))&&!(address.equals(""))&&!(phone.equals(""))
        &&!(realname.equals(""))&&!(password.equals("")))
   {%> 
     <jsp:setProperty  name= "login"  property="logname"  value="<%=logname%>" />
     <jsp:setProperty  name= "login"  property="realname" value="<%=realname%>" />
     <jsp:setProperty  name= "login"  property="password"  value="<%=password%>" />
     <jsp:setProperty  name= "login"  property="email" value="<%=email%>" />
     <jsp:setProperty  name= "login"  property="phone"  value="<%=phone%>" />
     <jsp:setProperty  name= "login"  property="address" value="<%=address%>" />
    <% 
     login.addItem();
    }
   else
    {out.print("你还没有填写信息,或信息填写不完整");
    }
 %>
  <% //返回注册信息
     if(!(session.isNew()))
    {
  %>
    <jsp:getProperty  name= "login"  property="message" />
  <%
    } 
 %>
</Body>
</HTML>

登录页面使用的beans
Login.java:
import java.sql.*;
public class Login
{   String logname,
           realname, 
           password,
           phone,
           address;
    String success="false",message=""; 
    Connection con;
    Statement sql; 
    ResultSet rs;
    public Login()
    {  //加载桥接器:
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
    }
   //设置属性值、获取属性值的方法:
   public void setLogname(String name)
    {  logname=name;
    }
   public String getLogname()
    {return logname;
    }
   public void setPassword(String pw)
    {  password=pw;
    }
    public String getPassword()
    {return password;
    }
   public void setRealname(String name)
    {  realname=name;
    }
    public String getRealname()
    {return realname;
    }
   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 String getSuccess()
    {return success;
    }
   //查询数据库的user表:
   public String getMessage()
    {try{
         con=DriverManager.getConnection("jdbc:odbc:shop","","");
         sql=con.createStatement();
          String condition=
         "SELECT * FROM user WHERE logname = "+"'"+logname+"'";
          rs=sql.executeQuery(condition);
          int rowcount=0;
          String ps=null;
         while(rs.next())
           { rowcount++;
             logname=rs.getString("logname");
             realname=rs.getString("realname");
             ps=rs.getString("password");
             phone=rs.getString("phone");
             address=rs.getString("address");
           } 
         if((rowcount==1)&&(password.equals(ps)))
           { message="ok";
             success="ok";
           }
        else
           {message="输入的用户名或密码不正确";
            success="false";
           }
        con.close();
        return message;
       }
     catch(SQLException e)
       { message="输入的用户名或密码不正确";
         success="false";
         return message;
       }
    }
}

登录页面(效果如图8.7所示)
userLogin.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="Login" %> 
<%! //处理字符串的方法:
  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" %>
<Font size=1>
<%String string=response.encodeURL("userLogin.jsp");
%>
<P>输入用户名和密码:
<FORM action="<%=string%>" Method="post">
<BR>登录名称<Input type=text name="logname">
<BR>输入密码<Input type=password name="password">
<BR><Input type=submit name="g" value="提交">
</Form>
<jsp:useBean id="login" class="Login" scope="session" >
</jsp:useBean>
 <% //提交信息后,验证信息是否正确:
   String  message="",
           logname="",
           password="";
    if(!(session.isNew()))
    {logname=request.getParameter("logname");
        if(logname==null)
           {logname="";
           }
     logname=codeString(logname);
     password=request.getParameter("password");
        if(password==null)
           {password="";
           }
     password=codeString(password);
   }
 %>
 <%
   if(!(logname.equals("")))
    {
   %>
     <jsp:setProperty  name= "login"  property="logname"  value="<%=logname%>" />
     <jsp:setProperty  name= "login"  property="password"  value="<%=password%>" />
   <%
     message=login.getMessage();
        if(message==null)
          {message="";
          }  
   }
 %>
 <%  if(!(session.isNew()))
      { if(message.equals("ok"))
          { String str=response.encodeURL("buybook.jsp");
            response.sendRedirect(str); 
          }
        else
          {out.print(message);
          }
      }
  %>
</Body>
</HTML>

订购页面使用的beans (该beans负责查阅用户准备订购的图书)
BuyBook.java:
import java.sql.*;
public class BuyBook
{   long id=0;
    String order_number,
           book_name;
    Connection con;
    Statement sql; 
    ResultSet rs;
    public BuyBook()
    {  //加载桥接器:
       try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          }
       catch(ClassNotFoundException e){}
    }
  //设置属性值、获取属性值的方法:
  public void setId(long n)
    {id=n;
    }
  public long getId()
    {return id;
    }
  public void setBook_name(String name)
    {  book_name=name;
    }
  public String getBook_name()
    {return book_name;
    }
  public void setOrder_number(String number)
    {  order_number=number;
    }
  public String getOrder_number()
    {return order_number;
    }
  //通过书的id号查询数据库的book表:
   public StringBuffer getMessageBybook_id()
    {
     StringBuffer buffer=new StringBuffer();
     try{
         con=DriverManager.getConnection("jdbc:odbc:shop","","");
         sql=con.createStatement();
          String condition="SELECT * FROM book WHERE id = "+id;
          rs=sql.executeQuery(condition);
         buffer.append("<Table Border><FONT size=1> ");
            buffer.append("<TR>");
       buffer.append("<TH width=50>"+"<Font size=1>"+"id"+"</FONT>");
       buffer.append("<TH width=50>"+"<Font size=1>"+"订购号"+"</FONT>");
       buffer.append("<TH width=70>"+"<Font size=1>"+"书名"+"</FONT>");
       buffer.append("<TH width=60>"+"<Font size=1>"+"作者"+"</FONT>");
       buffer.append("<TH width=60>"+"<Font size=1>"+"出版社"+"</FONT>");
       buffer.append("<TH width=50>"+"<Font size=1>"+"出版时间"+"</FONT>");
       buffer.append("<TH width=20>"+"<Font size=1>"+"价钱"+"</FONT>");
       buffer.append("<TH width=50>"+"<Font size=1>"+"分类"+"</FONT>");
       buffer.append("</TR>");
           while(rs.next())
           { order_number=rs.getString(2);
             book_name=rs.getString(3);
             String 作者=rs.getString(4);
             String 出版社=rs.getString(5);
             Date 时间=rs.getDate(6);
             String 价格=rs.getString("price");
             String 分类=rs.getString("category"); 
             buffer.append("<TR>");
             buffer.append("<TD >"+"<Font size=1>"+rs.getLong(1)+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+order_number+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+book_name+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+作者+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+出版社+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+时间+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+价格+"</FONT>");
             buffer.append("<TD >"+"<Font size=1>"+分类+"</FONT>");
             buffer.append("</TR>");
          } 
        buffer.append("</TABLE>");
        buffer.append("</FONT>");
        con.close();
        return buffer;
       }
     catch(SQLException e)

⌨️ 快捷键说明

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