软件工程学年设计之购物车管理系统

上传人:206****923 文档编号:90841367 上传时间:2019-06-19 格式:DOC 页数:11 大小:147KB
返回 下载 相关 举报
软件工程学年设计之购物车管理系统_第1页
第1页 / 共11页
软件工程学年设计之购物车管理系统_第2页
第2页 / 共11页
软件工程学年设计之购物车管理系统_第3页
第3页 / 共11页
软件工程学年设计之购物车管理系统_第4页
第4页 / 共11页
软件工程学年设计之购物车管理系统_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《软件工程学年设计之购物车管理系统》由会员分享,可在线阅读,更多相关《软件工程学年设计之购物车管理系统(11页珍藏版)》请在金锄头文库上搜索。

1、 课 程 设 计课程名称:软件工程设计实验项目:购物车管理系统姓 名:XXX专 业:计算机科学与技术班 级:XX班学 号:XXX指导教师:XXX计算机科学与技术学院实验教学中心XXXX年XX月XX日1、 需求分析1 总体分析如今,随着互联网的发展,越来越多的人选择了网上购。网上购物即经济又便捷,是多数年轻人购物的首选方式。模拟C2C(Consumer to Consumer )的网购,设计了简单的购物车系统。进入购物车系统主页后,卖家进入的是商品管理模块,对自己要卖的商品进行添加,删除,查询的这些基本操作。买家则进入购买商品模块,查询到卖家所添加的所有商品,选择自己心仪的商品,添加到购物车。添

2、加购物车时可以填写购买数量,添加到购物车后,还可以修改购买商品的数量。2 功能分析 2.1商品管理 在商品管理模块中,卖家可以添加商品,涉及商品编号id,商品名称,商品价格,商品库存量,商品图片。数据保存的位置在数据库中,在数据库中进行插入操作。 卖家可以查询商品,涉及涉及商品编号id,商品名称,商品价格,商品库存量,商品图片。数据保存的位置在数据库中,在数据库中进行查询操作。 卖家可以删除商品,涉及涉及商品编号id,商品名称,商品价格,商品库存量,商品图片。数据保存的位置在数据库中,在数据库中根据该商品的编号id,对其进行删除操作。 2.2购买商品在购买商品模块中,买家对其进行操作。首先查询

3、可以购买的商品,涉及商品编号id,商品名称,商品价格,商品图片。数据保存的位置在数据库中,在数据库中进行查询操作,查出所有商品。买家选购商品,涉及商品名称,选购数量,价格,商品图片和商品编号id。数据在程序中执行并保存。买家查看购物车,涉及已选购的商品名称,选购数量,价格和商品编号id。数据在程序中执行并保存。买家在购物车中取消已选中的某个商品,根据商品id,对该商品进行删除。数据在程序中执行并保存。买家在购物车中取消已选中的全部商品,清空购物车。数据在程序中执行并保存。买家在购物车中修改已选中商品的数量。数据在程序中执行并保存。2、 总体设计1 总体模块的划分 购物车管理系统划分为两个子模块

4、。即:商品管理模块和购买商品模块。2 模块结构化设计2.1 变换分析数据流程图 模块结构图3、 详细设计1数据库设计1.1 数据库物理结构 1.1.1 数据文件 数据字典数据流名称:商品信息来源:添加商品用户去向:连接商品信息,实现商品信息的增删改查组成:商品ID(PK) + 商品名称NAME + 商品库存量GNUM + 商品价格PRICE + 商品图片PICTURE 商品ID为确定商品唯一性的标识,是该商品的主键。商品名称NAME描述该商品的名字。商品库存量GNUM,添加商品是要添加库存量,当购买商品数量大于库存量是,该商品将不会被购买,显示余量不足。商品价格PRICE描述该商品的单价。商品

5、图片PICTURE,添加商品时要添加图片,这里的图片存储在数据库中的是图片的名称,显示中会根据图片名称来寻找该商品的图片来显示。1.1.2 重做日志文件 建立重做日志文件1.1.3 控制文件 控制文件直接COPY,然后在启动参数(control_files)里改就可以了1.2 数据库逻辑结构E-R图1.3 数据库详细设计1.3.1 表的创建系统维护的数据表:用户表:(商品编号(PK)、商品名称 、 库存量 、商品单价、商品图片) 商品表(table_goods)字段类型含义说明idnumber(10)商品ID用来唯一标识一个商品(PK)namevarchar2(20)商品名称用来描述商品名称g

6、numnumber(10)库存量用来记录商品的库存量,当购物车中购买的商品数大于库存量是就不能购买pricenumber(10)商品单价用来描述商品的单价picturevarchar2(20)商品图片用于储存上传的图片的图片名称创建表的sql语句:Table_goods表 create table table_goods( id number(10), name varchar2(20), gnum number(10), price number(10), picture varchar2(20) ); 1.3.2 序列的建立Table_goods表的序列Create sequence go

7、ods_seqIncrement by 1Minvalue 1Maxvalue 1000Start with 1Cache 20Nocycle;1.3.3 插入测试数据 向table_goods 表插入3条测试数据insert into table_goods ( id,name,gnum,price,picture ) values (goods_seq.nextval,篮球,50,100,basketball.jpg)insert into table_goods ( id,name,gnum,price,picture ) values (goods_seq.nextval,QQ公仔,2

8、,98,qqbat.jpg)insert into table_goods ( id,name,gnum,price,picture ) values (goods_seq.nextval,橄榄球,18,63,ganlan.jpg)注:插入的图片名要与放在项目中的图片的文件名完全一致。2 界面设计根据子模块进行界面分析和设计 主页界面 2.1 商品管理模块 2.1.1 查询所有商品 商品卖家进入商品管理模块,进入显示所有已添加的商品。 select id,name,gnum,price,picture from table_goods order by id 界面: 2.1.2 新增商品卖家进

9、入新增查询所有商品页面后,点击新增商品,跳转到新增商品页面。填写商品的属性:商品名称,商品数量,商品单价,添加商品图片。点击提价后,继续跳到查询所有商品页面,显示所有已添加商品。同时,新增也面还对添加的属性做了校验。首先,文本域内的内容不能为空,其次,添加商品数量和商品单价都必须是数字。否则提交不回通过,并跳回笨页面,显示错误内容。insert into table_goods (id,name,gnum,price,picture)values(goods_seq.nextval,新增商品的名称,新增商品的库存量,新增商品的单价,新增商品图片的图片名);界面: 校验的页面2.1.2 删除商品

10、卖家进入新增查询所有商品页面后,点击删除商品,该商品被删除,再次查询所有商品,跳转到所有商品页面。删除该商品时,同时删除了该商品上传时匹配的图片。 delete table_goods where id =该商品的商品编号2.2 购买商品模块 2.2.1 查询所有商品 买家进入主页后点击购买商品,查询所有商品后跳转到商品列表页面,显示所有 商品。select id,name,gnum,price,picture from table_goods order by id ;界面:2.2.2 加入购物车 在商品列表页面点击添加购物车后,进入确认添加到购物车页面,显示商品的名称,单价和图片,买家填写

11、添加的数量。点击提交跳转到购物车页面。 页面: 购物车显示界面: 2.2.2 继续购物 在购物车页面点击继续购物,进入商品列表页面,继续选购,添加到购物车。如果选购的是同种商品,跳转到购物车后会合并已有的商品,将数量修改。 界面:2.2.3 修改数量在购物车页面的数量栏修改商品数量,点击修改。购买数量就会被修改,总价钱会改变。界面:2.2.4 删除加入购物车中的某个商品在购物车也面点击删除,对应的该条商品就会在购物车中被删除掉。 界面: 2.2.5 清空购物车清空购物车后,购物车中所有选购的商品都已清空。界面:3 代码设计所有代码附文件。四、设计心得 一个月的课程设计终于在今天基本完成了。在这

12、次课程设计中我用了JAVA WEB 做了这次的购物车项目,对web开发又有了更深的认识和更多的了解。要做好这个web项目,首先要对这些过程进行全面的分析,了解每一步与下一步的关系,中间传递数据的处理,以求最简洁的完成数据处理。其次是减小系统开销,之前考虑在购买商品模块对数据的处理也是用数据库,添加个状态位,在购买商品模块中进行的增删改查只是修改了状态位。之后想想,这样做不仅数据繁琐,而且连接数据库增加了系统的开销。而将数据放在session中处理,节省了系统的开销。在做这个项目时,得意之处是添加了分页的功能,每页显示三个,如果显示太多会使得页面看起来很乱。使用struts框架应用了form的特性,对添加新的商品页面进行了form校验。使得校验能很容易的完成。但使用form校验同样给我带来了麻烦,没校验之前项目能够运行,form中加上校验方法后项目不能运行了。通过查资料了解的,在form中写校验方法后,不需要校验的页面如果也配置了相同form,就应该在struts-config.xml文件中action的validate属性设置为false。当然,不足之处还有很多。比如没有实现库存量与购买数的比较,没有添加完整的购买过程,购买后修改库存量的个数。我相信这些内容通过以后的学习会不断地完善。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号