1.在浏览器中输入”http://localhost:8080/ch10/index.jsp”进入主页,主页页面如下图所示:左边为树形菜单,右边为手机销售网主页页面图。
代码:index.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<HEAD>
<%@ include file="head.txt" %>
<link rel="StyleSheet" href="dtree.css" type="text/css" />
<script type="text/javascript" src="dtree.js"></script>
</HEAD>
<title>首页</title>
<CENTER>
<h1><font Size=4 color=blue>
欢迎光临“智多星”智能手机销售网
</font>
</h1>
</CENTER>
<meta charset="UTF-8">
<title>树形菜单</title>
<BODY>
<div class="dtree">
<p><a href="javascript: d.openAll();">open all</a> | <a href="javascript: d.closeAll();">close all</a></p>
<script type="text/javascript">
<!--
d = new dTree('d');
d.add(0,-1,'My example tree');
d.add(2,0,'用户');
d.add(8,2,'注册','inputRegisterMess.jsp');
d.add(9,2,'登录','login.jsp');
d.add(3,0,'商品');
d.add(10,3,'浏览手机','lookMobile.jsp');
d.add(11,3,'查询手机','searchMobile.jsp');
d.add(4,0,'我的');
d.add(12,4,'购物车','lookShoppingCar.jsp');
d.add(13,4,'订单','lookOrderForm.jsp');
d.add(5,0,'退出','exitServl');
d.add(6,0,'主页','indexx.jsp');
document.write(d);
//-->
</script>
</div>
<CENTER>
<img src="image/welcome.jpg" width=500 height=400 ></img>
</CENTER>
</BODY></HTML>
2.树形菜单一共五个菜单:用户、商品、我的、退出和主页。
①用户:分两个子菜单,分别是注册和登录。
注册页面:
若输入格式有误、密码为空、两次输入密码不正确或用户名已存在数据库里,则注册失败。
代码:HandleRegister.class
package myservlet.control;
import mybean.data.*;
import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HandleRegister extends HttpServlet {
public void init(ServletConfig config) throws ServletException {
super.init(config);
try { Class.forName("com.mysql.jdbc.Driver");
}
catch(Exception e){}
}
public String handleString(String s)
{ try{ byte bb[]=s.getBytes("iso-8859-1");
s=new String(bb);
}
catch(Exception ee){}
return s;
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException {
String uri="jdbc:mysql://127.0.0.1/mobileshop?"+
"user=root&password=777777&characterEncoding=gb2312";
Connection con;
PreparedStatement sql;
Register userBean=new Register(); //创建的Javabean模型
request.setAttribute("userBean",userBean);
String logname=request.getParameter("logname").trim();
String password=request.getParameter("password").trim();
String again_password=request.getParameter("again_password").trim();
String phone=request.getParameter("phone").trim();
String address=request.getParameter("address").trim();
String realname=request.getParameter("realname").trim();
if(logname==null)
logname="";
if(password==null)
password="";
if(!password.equals(again_password)) {
userBean.setBackNews("两次密码不同,注册失败,");
RequestDispatcher dispatcher=
request.getRequestDispatcher("inputRegisterMess.jsp");
dispatcher.forward(request, response);//转发
return;
}
boolean isLD=true;
for(int i=0;i<logname.length();i++){
char c=logname.charAt(i);
if(!((c<='z'&&c>='a')||(c<='Z'&&c>='A')||(c<='9'&&c>='0')))
isLD=false;
}
boolean boo=logname.length()>0&&password.length()>0&&isLD;
String backNews="";
try{ con=DriverManager.getConnecti