本项目设计说明书涉及需求分析、概要设计、详细设计、调试分析和用户使用说明;
一.需求分析
本项目意图开发一个基于JavaWeb技术的网上商城,其需求的功能如下图:
二.概要设计
1.用户可以注册登录商城网站,来进行挑选商品、下订单、在线支付;
2.管理员通过商城的后台界面可以来管理商品和订单;
三.详细设计
1.数据库设计
商城的表的设计如下图:
具体实现图如下:
2.开发环境搭建
2.1 目录结构
2.2 jar包
2.3 工具类
2.4 编码过滤器
2.5 Jsp页面模板
3.用户模块设计(前端)
3.1 大致设计流程
① 创建表,并初始化数据;
② 创建JavaBean;
③ 编写dao接口和实现类;
④ 编写service接口和实现类;
⑤ 编写servlet
3.2 用户注册功能设计
① 显示注册表单
1.修改index.jsp页面
2.修改UserServlet,添加registUI()方法
② 异步校验用户名是否存在
1.用户名文本框失去焦点触发JS函数
2.使用AJAX发送异步请求
3.获得服务器响应数据并处理,将结果显示在文本框后面的span中
③ 用户注册
1.完善regist.jsp表单,确定表单元素有name属性
2.在注册页面输入信息,点击注册,提交到UserServlet的regist()方法进行处理
3.servlet调用service的regist(user)进行用户注册操作
4.service调用dao的save(user)将用户保存到数据库
④ 发送激活邮件
1.注册用户保存到数据库后发生激活邮箱
2.创建会话,确定连接邮箱服务器的地址
3.编写消息,确定需要发送的内容
4.发送消息
⑤ 用户激活
1.通过国内邮箱接受邮件,点击邮件内连接
2.编写UserServlet的active方法,服务器获得用户激活码,并进行激活
3.编写的UserService的activeUser方法,通过激活码,用户用户
3.3 用户登录功能设计
① 显示登录表单
1.修改index.jsp页面
2.修改servlet,添加loginUI方法
② 登录功能
1.完善login.jsp表单
2.在登录页面输入用户名和密码,点击登录,发送请求到UserServlet
3.获得用户名和密码,通过用户名和密码查询用户
4.如果存在表示登录成功,讲用户信息保存到session,并定向到首页
5.如果用户不存在,给用户错误提示,并重新登录
3.4 用户退出功能设计
1.用户登录时,点击退出,发送请求到服务器
2.讲session保存用户信息移除,重定向到首页
3.5 自动登录功能设计
1.登录成功后,如果用户勾选自动登录,使用cookie将用户信息响应给浏览器
2.下次请求时,使用过滤器filter拦截器请求,获得用户信息,进行自动登录
3.6 记住用户名功能
1.登录成功后,判断是否勾选记住用户名
2.如果已经勾选,使用cookie记住用户名
3.在访问登录页面时,使用el回显用户名
3.7 完善所有jsp页面,提供header(导航条)
1.将导航条提取到header.jsp页面
2.其他所有前台页面,都静态包含header.jsp页面