第3章 总体设计
3.1 系统功能模块
功能模块图:
系统总体分为前台模块和后台模块。前台模块包括:注册会员,浏览商品,搜索商品,购买商品,购物车管理等。后台模块包括:登陆模块,用户管理,商品管理,订单管理等。
图3-1 系统功能模块图
3.1.1 前台模块
(1)用户注册:用户可以以游客身份浏览本系统,但是不可以购买商品。可以通过注册成为会员。注册时,填写基本信息,包括:姓名,性别,家庭住址,电子邮件,邮编等,方便购买商品后邮寄。系统检测输入的合法性。
(2)用户登录:注册为会员后可登录系统进行购买,购物车,个人信息等相关操作,系统向服务端发送请求并判断用户名密码是否正确。
(3)商品浏览:用户进入系统首页后可以浏览商品以及商品详细信息,选中商品可添加至购物车或者直接购买。
(4)商品查询:用户可在搜索栏中输入商品名称,类别等进行搜索查询自己想要的商品信息。
(5) 购物车:先判断用户是否登陆,没有登陆会跳转到登陆界面,已经登录,则进入购物车。购物车保存用户放入购物车中的商品,显示用户购买商品的名称,单价,数量以及总价等信息。用户可对购物车中商品修改购买数量,删除某个商品或清空购物车。
(6)生成订单:让用户确认商品信息,确认提交订单。并且核对用户收货地址,练习电话等信息。最后是呢工程订单
(7)个人信息管理:用户登陆后可以进入个人信息管理。可以查看修改自己的信息。
3.1.2 后台模块
(1)后台登陆模块:后台管理员可以选择权限来登陆后台。
(2)商品管理:管理员可对商品进行管理:添加新的商品,修改商品信息,或者删除商品。
(3)用户管理:管理员可以对用户进行管理:添加用户,删除用户,修改用户信息。
(4)订单管理:管理员可以对订单进行查看,删除等操作。
(5)管理员权限管理:管理员有不同权限的管理员,可以添加管理员,可以对其他的管理员进行管理。
3.2 数据库设计
3.2.1 系统概述
数据库是整个系统的最重要的部分,当下网络环境下,数据才是最重要的。实现数据的完整性,安全性,便捷性就成为了系统的重要部分。数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
本系统的前端开发是使用JSP技术,通过Servlet进行逻辑控制和数据库连接,而后台数据库采用的是MySql数据库。Mysql数据库具有内存占用少,方便快捷,安全可靠,存储速度快,兼容性好等优点。应用MySql作为后台数据库为系统的开发提供了强有力的支持,并对以后软件的运行提供了坚实的基础,因此,我们采用了MySql作为后台数据库。
关系型数据最好的设计模型是ER模式,首先设计局部的ER模式,然后把各局部的ER模式综合成一个全局模式。
总体ER图:
订单号密码用户名地址邮件用户ID总价用户生成订单订单号商品ID管理属于购买管理订单细节账号数量商品商品ID商品名称单价类别管理密码管理员 图3-2 总体E-R图
3.2.2数据库表设计
表1 商品信息表:(Goods)
表4-1 商品信息表 中文字段名 商品Id 商品名称 商品图片 商品单价 商品类别 商品重量
英文字段名 Goods_no Goods_name Goods_imagepath Goods_Price Kind_no Goods_weight 数据类型 Int(4) varchar(200) varchar(200) number number int(4) 主键 是 外键 是 允许空 是
表2 商品种类表:(Kind)
表4-2 商品种类表
中文字段名 商品种类Id 商品种类名
表3购物车表:(Category)
表4-3 购物车表
中文字段名 类别Id 商品编号 商品数量 总价
表4 会员表:(User)
表4-4 会员表
中文字段名 会员Id 用户名 密码 性别 联系地址 邮箱 联系电话 会员总消费 会员积分
英文字段名 Kind_Id Kind_Name 数据类型 number varchar(200) 主键 是 外键 允许空 英文字段名 UserId GoodsId Count TotalPrice 数据类型 number varchar(50) number number 主键 是 外键 是 是 允许空 英文字段名 UserId Name Pwd Sex Address Email Phone Sum point 数据类型 number varchar(50) varchar(50) varchar(50) varchar(200) varchar(50) varchar(50) number number 主键 是 外键 允许空
表5 管理员表:(Admin)
表4-5 管理员表
中文字段名 管理Id 管理员名 密码
表6 订单表:(Order)
表4-6 订单表
中文字段名 订单编号 订单日期 用户Id 订单价格
表7 订单明细表:(OrderDetail)
表4-7 订单明细表
中文字段名 订单明细号 订单编号 商品编号 商品数量 总价格 英文字段名 OrderDetailId OrderId GoodsId Count TotalPrice 数据类型 number number number number number 主键 是 外键 是 是 允许空 英文字段名 OrderId OrderDate UserId TotalPrice 数据类型 number datetime(8) number number 主键 是 外键 是 允许空 英文字段名 AdminId AdminName AdminPwd 数据类型 number varchar(50) varchar(50) 主键 是 外键 允许空 表8 库存表:(Store)
表4-8 库存表
中文字段名 英文字段名 数据类型 主键 外键 允许空 库存编号 商品编号 库存数量 StoreId GoodsId Count number number number 是 是