基于JSP和MySQL的网上商城的设计与实现

攻城狮0829

发布日期: 2020-08-15 22:21:34 浏览量: 170
评分:
star star star star star star star star star star_border
*转载请注明来自write-bug.com

前言

项目开发目的

近年来,互联网的快速发展,推动了网上购物的潮流,越来越多的人在 网上购买商品,尚购公司为了有力的推销自己的产品,决定打造一个 B2C 模 式的商城,用于销售自己本公司的产品。

项目开发定义

本系统主要有以下功能:

  • 用户功能实现

    • 用户的登录
    • 用户的注册
  • 系统功能实现

    • 商品模块
    • 订单模块
    • 评论模块
  • 后台管理

    • 管理员的登录
    • 用户的管理
    • 几大模块信息的管理

项目开发平台

  • IDE:MyEclipse

  • 数据库:MySQL

第1章 项目开发计划书

1.1 项目范围

系统主要分为五大模块

  • 登录注册模块

  • 商品模块

  • 订单模块

  • 评论模块

  • 后台管理模块

初始活动

  • 与客户交流,获取需求

  • 分析需求,制定开发方案

  • 根据系统的大小以及各方面的要求,选择合适的框架

  • 根据系统的开发周期,选定人员

最后活动

系统测试:对项目做单元测试和集成测试,针对测试报告,进一步改进。 减少 bug 数。

1.2 项目成果

序号 内容 计划时间 实际时间 状态
1 项目设计 20 天 30 天 已完成
2 文档开发 10 天 3 天 已完成
3 界面开发 2 天 2 天 已完成
4 登录注册模块 2 天 2 天 已完成
5 商品模块 3 天 3 天 已完成
6 订单模块 3 天 2 天 已完成
7 评论模块 3 天 3 天 已完成
8 后台管理模块 3 天 3 天 已完成
9 系统测试 5 天 5 天 已完成

1.3 项目风险分析

序号 风险 概率(%) 严重性(%) 措施
1 时间不够(因为自 己在学习,没有足 够多的时间) 80 100 尽量的腾出时间,可能 的话,晚上也加班完成 项目。
2 超期限 80 100 把握时间,排出进度表, 按进度执行。
3 由于系统集成时候 问题引起的最终产 品的缺陷 90 100 经过大量的测试,用不 同的操作系统平台,考 虑会出现的各种软硬件 环境错误信息。设计软 件的时候捕获所有可能 的错误信息。
4 遵循标准(如命名 规则)中的差别 80 10 建立命名规则要求

第2章 需求规格说明书

2.1 问题陈述

近年来,互联网的快速发展,推动了网上购物的潮流,越来越多的人在网上 购买商品,尚购公司为了有力的推销自己的产品,决定打造一个 B2C 模式的商 城,用于销售自己本公司的产品。

2.2 要达到的目标

本系统要达到的目标:

  • 在网站上发布公司产品,并能够对库存、订单进行处理

  • 能够注册会员和登录系统

  • 能够查询和浏览产品详细,会员可以购买商品,下订单,和收藏商品

2.3 需求分析

浏览商品

标识符 UC003
用例名称 浏览商品
简要说明 浏览商品和商品详细信息
参与者 管理员、会员、游客。
基本流 1. 打开系统。 2. 浏览商品
备选流
前置条件 成功打开系统
后置条件 浏览商品

搜索商品

标识符 UC004
用例名称 搜索商品
简要说明 搜索想要浏览的商品
参与者 管理员、会员、游客。
基本流 1. 打开系统。 2. 在搜索栏中输入搜索条件。 3. 点击搜索按钮。 4. 根据搜索条件查询符合条件的商品并显示。
备选流
前置条件 成功打开系统
后置条件 搜索到预期的商品。

收藏商品

标识符 UC005
用例名称 收藏商品
简要说明 将商品收藏起来,以便于以后查看
参与者 会员。
基本流 1. 选择商品 2. 点击收藏 3. 将商品收藏到收藏夹中。
备选流
前置条件 成功登录系统
后置条件 成功将商品收藏。

加入购物车

标识符 UC006
用例名称 加入购物车
简要说明 将商品加入购物车
参与者 会员。
基本流 1. 选择商品 2. 点击加入购物车 3. 将商品加入到购物车中。
备选流
前置条件 成功登录系统
后置条件 成功将商品加入到购物车中。

商品管理

标识符 UC007
用例名称 商品管理
简要说明 对系统中的商品进行管理
参与者 管理员
基本流 1a. 上架商品 1. 选择未上架商品。 2. 点击上架按钮。 3. 提示上架成功。 2a. 下架商品 1. 选择已上架商品。 2. 点击下架按钮。 3. 提示下架成功。 3a. 新增商品 1. 点击新增按钮,进入到新增页面。 2. 按要求输入商品信息。 3. 点击保存。 4. 提示保存成功。 4a. 修改商品 1. 选择商品。 2. 点击修改按钮。 3. 修改商品信息。 4. 点击保存。 5. 提示保存成功。 5a. 删除商品 1. 选择商品。 2. 点击上传按钮。 3. 提示是否要删除该商品。 4. 点击确定。 5. 提示删除商品成功。
备选流
前置条件 管理员成功登录系统
后置条件 1a. 成功将商品上架。 2a. 成功将商品下架。 3a. 成功新增商品信息。

评论

标识符 UC010
用例名称 评论
简要说明 会员对本次交易进行评论。
参与者 会员。
基本流 1. 选择已完成的订单。 2. 点击评论。 3. 输入评论。 4. 点击提交评论。 5. 评论提交成功。
备选流 1a. 追评 1. 选择已完成并已评论的订单。 2. 点击追评按钮。 3. 输入追评。 4. 点击提交。 5. 成功提交追评。
前置条件 1. 会员成功登录系统。 2. 订单已经完成。
后置条件 成功评论。

回复评论

标识符 UC011
用例名称 回复评论
简要说明 对评论进行回复。
参与者 管理员。
基本流 1. 选择要回复的评论。 2. 点击回复按钮。 3. 输入回复信息。 4. 点击提交。 5. 回复评论提交成功。
备选流
前置条件 3. 管理员成功登录系统。 4. 会员已评论。
后置条件 成功回复评论。

第3章 系统设计书

3.1 命名规则

开发人员统一命名规范程序代码,更好的统一各模块。

数据库命名规则

  • :“Tab_”+“表描述词”。如:Tab_User 指用户表

  • :“表描述词‘’的首字母为小写。如:userId 措用户表的 ID 数据库名:shang_gou

类命名规则

用名词或名词短语命名类、每个单词或短语的第一个字母必须大写。 如:public class UserDaoImpl(){}

函数命名规则

用动词或动词短语命名方法。用下述范例所示的 Pascal 大写方式命名方法。如:public String UserFind()、public void MakeMD5 ()

属性命名规则 用动词或动词短语命名方法。字母里面不能含有大写字母及下划线。如:loginname、loginpassword

接口的命名规则

使用名词或名词短语,或者描述行为的形容词来命名接口。例如,UserDao(描述性名词),在接口名前加前缀 I,以表示这个类型是一个接口。 如:public interface UserDao {}

JSP 命名规则

用名词或名词短语命名类 、每个单词或短语的第一个字母必须大写。 如:Log.jsp、index.jsp

3.2 软件结构图

3.2.1 系统总架构图

3.2.2 系统文件结构图

3.3 系统功能结构设计

  • 用户注册:提供新用户功能,检查注册信息的有效性,并将注册用户信息存入对应数据库的数据表中

  • 评论管理:会员对本次交易进行评论,管理员对评论进行回复

3.4 类图

3.4.1 包图

根据其功能将其为七个包,如下图所示。

包名 主要功能
Web 页面层,用于存放页面视图
dao 数据接口
bean 实体包,保存实体模型
control 访问控制包,用于实现界面和业务连接控制
dao.impl 数据业务包

3.5 时序图

3.5.1 用户注册

用户在注册页面添加个人信息提交传给服务器管理员保存。

3.5.2 商品添加

3.6 数据库设计

3.6.1 数据库

  • 数据库名称:shang_gou

  • 数据文件大小:3M

  • 数据文件物理位置:C:\ MySQL \MSSQL.1\MSSQL\DATA\ shang_gou.mdf

  • 日志文件大小:1M

  • 日志文件物理位置:C: \MySQL \MSSQL.1\MSSQL\Data\ shang_gou_log.ldf

  • 文件组名称:PRIMARY

3.6.2 表设计

以下不包括 SQL Server 为数据库提供的默认的系统表。

系统用户表(sys_user)

字段名 字段说明 类型 长度 是否为空 备注
account 用户账号 varchar 30 NO 主键
password 用户密码 Varchar 30 NO
nickname 用户昵称 Varchar 30 NO
name 姓名 Varchar 10 YES
sex 性别 Varchar 2 YES
birth_date 出生日期 date YES
email 邮箱 Varchar 30 YES
qq QQ Varchar 20 YES
mobile_phone 手机 varchar 20 NO
phone 电话 varchar 20 YES
addr 地址 varchar 200 YES

会员表(member)

字段名 字段说明 类型 长度 是否为空 备注
member_account 管理员编号 varchar 30 NO 主键
member_password 管理员名 varchar 30 NO
member_nickname 管理员密码 varchar 30 NO
name 姓名 varchar 10 YES
sex 性别 varchar 2 YES
age 年龄 int 3 YES 默认值 为 0
birth_date 出生日期 date YES
constellation 星座 varchar 10 YES
email 邮箱 varchar 30 YES
qq QQ varchar 20 YES
mobile_phone 手机 varchar 20 YES
phone 电话 varchar 20 YES
addr 地址 varchar 200 YES

地址表(address)

字段名 字段说明 类型 长度 是否为空 备注
addr_no 地址编码 varchar 30 NO 主键
member_account 会员账号 varchar 30 NO
addr 收件地址地址 varchar 200 NO
postcode 邮编 varchar 10 YES
name 收件人 varchar 10 NO
mobile_phone 手机 varchar 20 NO
phone 电话 varchar 20 YES

商品类型表(commodity_type)

字段名 字段说明 类型 长度 是否为空 备注
type_no 类型编码 varchar 30 NO 主键
type_name 类型名称 varchar 30 NO
parent_type_no 父类型编码 varchar 30 NO
remark 备注 varchar 100 YES
new_account 新增人 varchar 10 YES 外键(sys_user)
new_date 新增时间 date YES
commentaccount 修改人 varchar 10 YES 外键(sys_user)
modification_date 修改时间 date YES

商品表(commodity)

字段名 字段说明 类型 长度 是否为空 备注
commodity_no 商品编码 varchar 30 NO 主键
type_no 类型编码 varchar 30 NO 外 键 (commodity_ty pe)
commodity_name 商品名称 varchar 30 NO
commodity_intro 商品简介 varchar 100 NO
commodity_detail 商品详情介绍 varchar 300 YES
price 单价 float NO 0
is_putaway 是否上架 tinyint 1 NO 0
new_account 新增人 varchar 10 YES 外键(sys_user)
new_date 新增时间 date YES
commentaccount 修改人 varchar 10 YES 外键(sys_user)
modification_date 修改时间 date YES

商品图片表(commodity_picture)

字段名 字段说明 类型 长度 是否为空 备注
picture_no 商品编码 int 10 NO 主键(自动增长列)
commodity_no 类型编码 varchar 30 NO 外键(commodity)
prcture_addr 商品名称 varchar 300 NO
prcture_rank 商品简介 varchar 30 NO
prcture_sequence 商品详情介绍 varchar 300 NO

商品规格表(commodity_specification)

字段名 字段说明 类型 长度 是否为空 备注
sku_no SKU 编码 int 10 NO 主键 ( 自 动 增 长列)
sku_code SKU 码 varchar 30 NO
commodity_no 商品编码 varchar 30 NO 外 键 (commodity)
stock_number 库存数量 int 10 NO 0
sell_number 已售数量 int 10 NO 0
spec1 规格 1 varchar 30 NO
Spec2 规格 2 varchar 30 NO
Spec3 规格 3 varchar 30 YES
Spec4 规格 4 varchar 30 YES
Spec5 规格 5 varchar 30 YES
remark 备注 varchar 100 YES

商品参数表(commodity_parameter)

字段名 字段说明 类型 长度 是否为空 备注
parameter_no 参数编码 int 10 NO 主键 ( 自 动 增 长列)
commodity_no 商品编码 varchar 30 NO 外键 (commodity)
parameter_name 参数名称 varchar 30 NO
parameter_explain 参数说明 varchar 100 NO 0

购物车表(shopping_no)

字段名 字段说明 类型 长度 是否为空 备注
shopping_no 购物车编码 int 10 NO 主键 ( 自 动 增 长列)
member_account 会员编码 varchar 30 NO 外键(member)
commodity_no 商品编码 varchar 30 NO 外 键 (commodity)

订单表(order)

字段名 字段说明 类型 长度 是否为空 备注
order_no 订单号 varchar 30 NO 主键
member_account 会员编码 varchar 30 NO 外键(member)
addr_no 地址编码 varchar 30 NO 外 键 (address)
order_date 订单日期 date NO
account 修改人 varchar 10 YES 外 键 (sys_user)
modification_date 修改时间 date YES

第4章 系统操作手册

4.1 用户登入模块操作

会员输入账号和错误密码时候会提示密码错误的框、输入正确密码进入主 页,就可以看到物品的信息和价格了,还有可以看到搜索框,可以去搜索你想要 的物品,后显示物品的信息和价格了。

4.2 用户注册模块操作

没有会员账号的可以选择注册按钮,进入注册界面去申请注册会员。密码和 重复密码不一样的时候回提示注册失败。注册成功后会直接跳到登入界面在进行 重新登入。

4.3 订单提交模块操作

会员选好物品后并点击购买后会进入订单提交界面,会员可以查看到自己的 收件地址,和你选好的物品名称和金额。

4.4 商品留言评论

上传的附件 cloud_download 尚购网上商城的设计与实现.zip ( 2.15mb, 3次下载 )
error_outline 下载需要12点积分

发送私信

43
文章数
10
评论数
最近文章
eject