1 / 18
文档名称:

网上购物系统.doc

格式:doc   大小:660KB   页数:18页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

网上购物系统.doc

上传人:水中望月 2019/2/25 文件大小:660 KB

下载得到文件列表

网上购物系统.doc

相关文档

文档介绍

文档介绍:第16单元网上购物系统单元描述:本单元主要探讨基于JavaEE的Web应用系统的开发,将通过网上购物系统讲述使用JavaEE框架技术开发Web系统的过程。在描述该系统时,引入软件工程的概念,采用项目开发的顺序,一步一步展开。使学生在按照该案例进行操作的同时,提前体验以后软件开发岗位的工作。该系统采用B/S模式的四层开发模型进行设计,其数据库层由MySQL实现,表示层由JavaEE的Struts2框架实现,业务逻辑层由Spring框架实现,数据持久化层由Hibernate框架实现。单元目标:l 掌握系统开发的主要步骤;l 能够完成系统的需求分析和功能解析;l 了解系统数据库设计的过程;l 掌握数据库层、数据持久化层、业务逻辑层、表示层的开发步骤。 步骤1 网上购物系统需求分析根据网上购物的基本特点,网上购物系统应具有如下基本功能:(1)用户管理,即用户登录、注册、注销操作;(2)商品浏览,即按照商品类别进行商品分类查询和浏览;(3)购物车管理,即将用户选购的商品加入购物车,实现购物车的查询和更新;(4)订单管理,即对用户选购的商品生成订单。根据上述系统功能分析,设计网上购物系统的功能模块图如图16-1所示。图16-1 步骤2 网上购物系统数据库设计网上购物系统应包含用户、商品、商品分类信息,因此该系统的E-R图如图16-2所示。图16-2 网上购物系统的E-R图用户名密码性别年龄商品用户订购mn购买数量价格库存量折扣图片商品分类属于n1类别名称商品名称(1)用户:代表一个用户实体,主要包括用户信息,如用户名、密码、性别、年龄等。(2)商品分类:代表网上购物系统中已有商品的分类信息,如精品图书、数码产品等。(3)商品信息:代表具体商品的详细信息,如商品名称、价格、折扣、图片等。各个实体之间存在的对应关系如下。(1)商品分类与商品的关系:一种商品属于一种商品分类,一种商品分类包含多种商品,因此该关系是一对多的关系。(2)用户与商品的关系:一个用户可以订购多种商品,一种商品可以被多个用户订购,因此该关系是多对多的关系。图16-3 数据库中各表的关系图当用户购买商品时,系统要将购买信息记载入购物车中,产生临时购买信息,并记载下需要购买的数量;当用户确定要对自己所选择的商品下订单时,将产生对应的订单信息。因此该系统需要5张表,分别为用户表、商品信息表、商品分类表、购物车表以及订单表。各表之间的关系图如图16-3所示。其中,用户表(user)、商品分类表(productsort)、商品信息表(productinfo)以及购物车表(cart)已经在前面的章节中已经讲述过了,请读者参考。为了记录商品的图片信息,需要在商品信息表中添加一个picture字段,该字段的定义如表16-1所示。此处不再给出创建productinfo表以及向该表插入记录的SQL语句,请读者参考第10、11单元的内容自行修改,其余数据表的结构保持不变。表16-1 “productinfo”表“picture”字段的结构列名数据类型长度是否允许为空说明picturevarchar30允许为空记载图片名称当用户确定要购买自己放在购物车中的商品时,便产生了订单,该系统的订单表(orders)的表结构如表16-2所示。表16-2 “orders”表的表结构列名数据类型长度是否允许为空说明idint4主键订单编号userIdint4不允许为空(外键)用户编号productIdint4不允许为空(外键)商品编号addressvarchar50不允许为空用户地址telNumvarchar15允许为空用户电话e_Mailvarchar50不允许为空用户邮箱地址创建订单表(orders)的SQL代码如下:createtableifnotexistsorders(idintprimarykeyauto_increment,userIdintnotnull,productIdintnotnull,addressvarchar(50)notnull,telNumvarchar(15),e_Mailvarchar(50)notnull);#为“orders”表添带有加级联删除和级联更新功能的外键FK_order_productInfo、FK_order_user。altertableordersaddconstraintFK_order_productInfoforeignkey(productId)referencesproductInfo(id)ondeleterestrictonupdaterestrict;altertableordersaddconstrain