Java Web学习:西蒙购物网【下】

四、实现步骤
(九)准备图片资源
在web目录里创建images目录,存放项目所需图片文件:
Java Web学习:西蒙购物网【下】_第1张图片
(十)CSS样式文件
在web目录里常见css子目录,在里面创建main.css文件:

/* 样式 */
body {
    margin: 0px;
    text-align: center;
    background: url("../images/frontBack.jpg") no-repeat;
    background-size: 100%
}

table {
    margin: 0 auto;
    font-size: 14px;
    color: #333333;
    border-width: 1px;
    border-color: khaki;
    border-collapse: collapse;
}

table th {
    border-width: 1px;
    padding: 8px;
    border-style: solid;
    border-color: gainsboro;
    background-color: honeydew;
}

table td {
    border-width: 1px;
    padding: 8px;
    border-style: solid;
    border-color: gainsboro;
    background-color: #ffffff;
}

/*登录页面样式*/
.login {
    width: 400px;
    height: 340px;
    background-color: honeydew;
    border: solid 2px darkgrey;
    left: 50%;
    top: 50%;
    position: absolute;
    margin: -170px 0 0 -200px;
}

.login .websiteTitle, .title {
    border: solid 1px floralwhite;
}

/*注册页面样式*/
.register {
    width: 400px;
    height: 350px;
    background-color: honeydew;
    border: solid 2px darkgrey;
    left: 50%;
    top: 50%;
    position: absolute;
    margin: -175px 0 0 -200px;
}

/*显示类别页面样式*/
.showCategory {
    width: 400px;
    height: 350px;
    background-color: honeydew;
    border: solid 2px darkgrey;
    left: 50%;
    top: 50%;
    position: absolute;
    margin: -150px 0 0 -200px;
}

/*生成订单页面样式*/
.makeOrder {
    width: 400px;
    height: 400px;
    background-color: honeydew;
    border: solid 2px darkgrey;
    left: 50%;
    top: 50%;
    position: absolute;
    margin: -200px 0 0 -200px;
}

/*显示订单页面样式*/
.showOrder {
    width: 400px;
    height: 400px;
    background-color: honeydew;
    border: solid 2px darkgrey;
    left: 50%;
    top: 50%;
    position: absolute;
    margin: -200px 0 0 -200px;
}

(十一)JavaScript脚本文件
在web目录里创建scripts子目录,在里面创建check.js文件:

/**
 * 检验登录表单
 *
 * @returns {Boolean}
 */
function checkLoginForm() {
    // 获取用户名文本框
    var username = document.getElementById("username");
    // 获取密码文本框
    var password = document.getElementById("password");
    // 非空校验
    if (username.value == "") {
        alert("用户名不能为空!");
        // 让用户名文本框获得焦点
        username.focus();
        return false;
    }
    if (password.value == "") {
        alert("密码不能为空!");
        // 让密码文本框获得焦点
        password.focus();
        return false;
    }

    return true; // 表明可以提交数据到服务器端
}

/**
 * 检验注册表单
 * @returns {Boolean}
 */
function checkRegisterForm() {
    // 获取用户名文本框
    var username = document.getElementById("username");
    // 获取密码文本框
    var password = document.getElementById("password");
    // 获取手机号码文本框
    var telephone = document.getElementById("telephone");

    // 非空校验
    if (username.value == "") {
        alert("用户名不能为空!");
        // 让用户名文本框获得焦点
        username.focus();
        return false;
    }
    if (password.value == "") {
        alert("密码不能为空!");
        // 让密码文本框获得焦点
        password.focus();
        return false;
    }

    // 检验手机号码
    var patrn = "/^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/";
    if (!patrn.exec(telephone)) {
        alert("非法手机号!");
        // 让手机号码文本框获得焦点
        telephone.focus();
        return false;
    }

    return true; // 表明可以提交数据到服务器端
}

(十二)添加JSTL的jar包
在WEB-INF\lib目录里添加支持jstl的jar包:
Java Web学习:西蒙购物网【下】_第2张图片
(十三)展现层页面(XXX.jsp)
1、登录页面login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    用户登录
    
    
    






    
    



    
    



在web.xml文件里将login.jsp设置为首页文件:
Java Web学习:西蒙购物网【下】_第3张图片
重启服务器:
Java Web学习:西蒙购物网【下】_第4张图片
不输入用户名与密码,单击【登录】按钮:
Java Web学习:西蒙购物网【下】_第5张图片
输入用户名,但不输入密码,单击【登录】按钮:
Java Web学习:西蒙购物网【下】_第6张图片
输入管理员用户名与密码:admin,12345
Java Web学习:西蒙购物网【下】_第7张图片
Java Web学习:西蒙购物网【下】_第8张图片
去服务器端控制台查看输出信息:
Java Web学习:西蒙购物网【下】_第9张图片
重启服务器,再以普通用户登录:郑晓红,11111
Java Web学习:西蒙购物网【下】_第10张图片
Java Web学习:西蒙购物网【下】_第11张图片
去服务器端控制台查看输出信息:
Java Web学习:西蒙购物网【下】_第12张图片
重启服务器,输入错误的用户名或密码:李文丽,12340:
Java Web学习:西蒙购物网【下】_第13张图片
Java Web学习:西蒙购物网【下】_第14张图片
去服务器端控制台查看输出信息:
Java Web学习:西蒙购物网【下】_第15张图片
2、注册页面register.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    用户注册
    
    
    



西蒙购物网

用户注册

账号
密码
电话

启动服务器,切换到注册页面:
Java Web学习:西蒙购物网【下】_第16张图片
什么也不输入,单击【注册】按钮:
Java Web学习:西蒙购物网【下】_第17张图片
输入用户名,单击【注册】按钮:
Java Web学习:西蒙购物网【下】_第18张图片
输入账号,密码,电话:
Java Web学习:西蒙购物网【下】_第19张图片
Java Web学习:西蒙购物网【下】_第20张图片
单击【确定】按钮,跳转到登录页面:
Java Web学习:西蒙购物网【下】_第21张图片
Java Web学习:西蒙购物网【下】_第22张图片
打开用户表,查看新添加的用户:
Java Web学习:西蒙购物网【下】_第23张图片
3、显示商品类别页面showCategory.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    显示商品类别
    
    



西蒙购物网

登录用户:${username} 注销

商品类别

类别编号 商品类别
${category.id} ${category.name}

启动服务器,显示登录页面,输入普通用户:郑晓红,11111
Java Web学习:西蒙购物网【下】_第24张图片
单击【登录】按钮,跳转到显示商品类别页面
Java Web学习:西蒙购物网【下】_第25张图片
单击【家用电器】超链接:
Java Web学习:西蒙购物网【下】_第26张图片
进入服务器端查看输出信息:
Java Web学习:西蒙购物网【下】_第27张图片
返回到刚才显示商品类别页面,单击【注销】超链接,返回登录页面:
Java Web学习:西蒙购物网【下】_第28张图片
Java Web学习:西蒙购物网【下】_第29张图片
4、显示购物车页面showCart.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>






    显示购物车
    


${username}的购物车

商品编号 商品名称 销售价格 购买数量 合计金额 用户操作
${shoppingItem.id} ${shoppingItem.name} ¥${shoppingItem.price} ${shoppingItem.amount} ¥${shoppingItem.sum} 删除
总金额 ¥0.00 ¥${totalPrice}

生成订单 生成订单

重启服务器,以普通用户登录后,访问http://localhost:8080/simonshop/frontend/showCart.jsp:
Java Web学习:西蒙购物网【下】_第30张图片
5、显示商品页面showProduct.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>






    显示商品信息
    
    


西蒙购物网


登录用户:${username} 注销
欢迎选购【${categoryName}】类商品
商品编号: ${product.id}
商品名称: ${product.name}
销售价格: ${product.price}
上架时间:
用户操作: 加入购物车

返回商品类别页面

启动服务器,显示登录页面,输入普通用户:郑晓红,11111:
Java Web学习:西蒙购物网【下】_第31张图片
单击【登录】按钮,跳转到显示商品类别页面:
Java Web学习:西蒙购物网【下】_第32张图片
单击【家用电器】超链接:
Java Web学习:西蒙购物网【下】_第33张图片
有问题,类别名没有显示,修改ShowProductServlet,将类别名放在session里,而不是通过url传递参数。
Java Web学习:西蒙购物网【下】_第34张图片
重启服务器,登录成功后,选择【家用电器】类别:
Java Web学习:西蒙购物网【下】_第35张图片
我们再测试加入购物车操作:
Java Web学习:西蒙购物网【下】_第36张图片
6、生成订单页面makeOrder.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    生成订单
    
    


西蒙购物网

登录用户:${username} 注销

生成订单

用户名
联系电话
总金额
送货地址

7、显示订单页面showOrder.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    显示订单
    
    


西蒙购物网

登录用户:${username} 注销

生成订单

订单编号 ${lastOrder.id}
用户名 ${lastOrder.username}
联系电话 ${lastOrder.telephone}
总金额 ${lastOrder.totalPrice}
送货地址 ${lastOrder.deliveryAddress}

我们来测试测试生成订单与显示订单页面:
重启服务器,以普通用户登录,选择【家用电器】类商品,在显示商品页面,将一些商品加入购物车,查看购物车情况:
Java Web学习:西蒙购物网【下】_第37张图片
单击【生成订单】超链接,跳转到【生成订单】页面:
Java Web学习:西蒙购物网【下】_第38张图片
输入联系电话与送货地址:
Java Web学习:西蒙购物网【下】_第39张图片

单击【支付】按钮,提示支付成功:
Java Web学习:西蒙购物网【下】_第40张图片
单击【确定】按钮,返回登录页面:
Java Web学习:西蒙购物网【下】_第41张图片
8、后台管理主页面management.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    西蒙购物网站后台管理
    


    
    
        
        
    



9、后台管理主页面左面板页面left.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>






    后台管理左面板
    
    
    



用户管理
查看用户
添加用户
更新用户
删除用户
类别管理
商品管理
订单管理

10、后台管理主页面顶面板页面top.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    后台管理顶面板
    






11、后台管理主页面主面板页面main.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>






    后台管理主面板
    






重启服务器,以管理员身份登录(admin:12345)进入后台管理页面:
Java Web学习:西蒙购物网【下】_第42张图片
Java Web学习:西蒙购物网【下】_第43张图片
12、查看用户页面showUser.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>






    显示用户信息
    
    



登录用户:${username} 注销

用户列表


编号 用户名 密码 电话 注册时间 权限
${user.id} ${user.username} ${user.password} ${user.telephone} 管理员 普通用户

重启服务器,以管理员身份登录,进入后台管理页面,查看用户:
Java Web学习:西蒙购物网【下】_第44张图片
13、待做页面todo.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    待做页面


抱歉,此页面正在建设中……

重启服务器,以管理员身份登录,单击【添加用户】:
Java Web学习:西蒙购物网【下】_第45张图片
五、实训总结
本次实训一共用时一个月(四个周一周四节课),写了一个项目西蒙购物网(共四部分),本项目采用MVC模式,视图层采用JSP页面(使用了核心标签库JSTL),,控制层采用Servlet(获取页面提交数据,连接后台数据库进行处理,根据处理结果进行页面跳转),模型层采用JDBC连接了数据库,使用后台管理本项目,后台管理只完成了用户管理的【查看用户】功能,其余的,类别管理、商品管理与订单管理,并没有做,只待后续完成。通过本项目的学习,使我更进一步地了解了JSP、数据库等的使用,后续我也希望我能继续学好这门课程。

你可能感兴趣的:(Java Web学习:西蒙购物网【下】)