当前位置:文档之家› 购物车项目开发设计与实现

购物车项目开发设计与实现

项目开发技术购物车项目开发设计与实现目录1 项目需求 (3)1.1 系统功能需求 (3)1.2 开发系统语言需求 (3)1.3 开发以及运行环境需求 (3)1.4 界面需求 (4)1.5 约束条件 (4)1.6 UML设计 (4)1.6.1 网上购物参与者 (4)1.6.2 系统中的用例 (5)2 项目设计 (7)2.1 系统功能 (7)2.1.1 登录模块 (7)2.1.2 购物车模块 (7)2.1.3 订单模块 (7)2.2 流程图 (7)2.2.1 在线购物流程图 (7)2.2.2 用户注册流程 (7)2.2.3 用户登陆流程 (8)2.2.4 购物车流程 (9)2.3 数据库设计 (10)2.4 系统界面实现 (11)2.4.1 登录界面的实现 (11)2.4.2 商品列表界面的实现 (11)2.4.3 购物车页面显示 (12)2.4.4 操作订单界面显示 (12)3 面向对象技术实现 (14)3.1 系统中的类 (14)3.2 数据库类 (15)3.3 边界类 (15)3.4 控制类 (15)4 测试方案 (17)4.1 测试方法 (17)4.2 系统功能测试用例 (17)项目开发总结 (19)1 项目需求本次研究选择的开发语言为Java,该系统基于B/S架构,用户可以通过浏览器对服务器使用访问。

首先需要实现网上购物的基本功能,显示商品列表、添加商品到购物车、确认订单,我所研究的重点是对网上购物车的设计与实现模块。

1.1 系统功能需求1、能够完成游客或已注册用户对网上商品列表的浏览,以及对各商品的详细信息的查看。

2、能够完成已登陆客户对商品的选购:添加商品到个人购物车,并且对已添加到购物车的商品进行数量的增加、减少、修改和删除等操作。

3、能够通过查看购物车对所选商品进行确定、挑选,确认或修改购物者的联系方式,通过定单查询对支付费用进行确定。

1.2 开发系统语言需求采用的主要技术是基于服务器端的JSP、Java的组件JavaBean,以及网页编程语言HTML。

利用JavaEE平台提供的Web编程方式,通过B/S结构方式,实现数据从数据库,到业务处理,到前台展示。

Web部分采用基于MVC模式的Struts框架实现,表现层主要用JSP与JavaScript、EL相结实现,控制层采用ActionServlet负责处理请求和转发请求,业务逻辑层使用JavaBean实现,并且采用DAO设计模式进行数据访问的封装,数据持久层采用JDBC技术实现业务层和数据库的交互。

设计开发的原则:每层之间都是采用面向接口编程技术,降低了上层对下层逻辑调用的依赖,该项目体现了低耦合、高内聚的设计思想。

服务器:Apache Tomcat 5.27数据库:MySQL技术实现:Struts+JDBC+JavaBean发集成环境:用Eclipcse集成环境进行开发JavaScript程序运行环境:Windows XP或Windows 7。

用于编辑HTML文档的字符编辑器或HTML文档编辑器。

1.3 开发以及运行环境需求本系统开发的基本环境如表1.3.1操作系统Windows 7/XP本系统的运行环境如下表1.3.2表1-2 系统运行环境项目最低配置CPU P3或同型号以上的CPU内存128M硬盘20G以上显卡Geforce2以上操作系统Windows 7/XP1.4 界面需求界面的原则要求:如方便、简洁、美观、一致等。

整个界面要保持友好、简易的风格。

1、输入设备:键盘、鼠标、扫描仪2、输出设备:显示器、打印机3、显示风格:IE 界面1.5 约束条件1、法律、法规和政策方面的限制。

首先,尊重《消费者权益保护法》等相关的法律法规;其次,鉴于我国的电子商务交易的法律法规还不完善,还有相当大的一部分交易环节仍依赖于传统的商品贸易法。

2、硬件、软件、运行环境和开发环境方面的条件和限制对于单机或浏览器版本太老的用户,或是受其他软硬件限制的用户,将无法进入网上商城方便快捷的进行购买,需更换软硬件资源。

1.6 UML设计1.6.1 网上购物参与者图1-1参与者(网上购物)1.6.2 系统中的用例图1-2系统中的用例图1-3网上购物系统用例包图图1-4总用例图2 项目设计2.1 系统功能系统主要分为以下几大模块:登录模块,购物车模块,订单模块各模块实现的功能如下:2.1.1 登录模块登录模块在区分不同用户的使用权限、加强软件使用安全性和保证数据安全方面起着关键的作用。

使注册用户能快捷的购买商品。

2.1.2 购物车模块添加商品到个人购物车,并且对已添加到购物车的商品进行数量的增加、减少、修改和删除等操作。

2.1.3 订单模块客户选择商品后产生账单,让消费者能够完成选购,付账一起实现。

2.2 流程图2.2.1 在线购物流程图此流程图显示用户浏览本网站所进行的操作,用户进入网站浏览商品,选择自己需要的商品,若用户未注册则跳转到用户注册界面,进行注册,进入购物车,确认订购商品,产生订单。

若已登录则直接进入购物车确认商品。

若已注册未登录则直接跳转到登陆界面,登陆后再进行商品的购买操作。

其流程如图所示:图2-1用户购物流程图2.2.2 用户注册流程点击主页面的用户注册选项后,会弹出一个注册信息页面,用户需要如实填写用户名,密码,E-mail,邮编,地址,电话等各项信息,系统进行检测判断该用户的用户名须不少于两位,用户输入的两次密码均不少于三位且是否一致,然后依次往后判断用户所填写的各项信息是否符合要求,直到所有信息均正确无误,系统将该用户注册信息写入会员表即cart_user表并提示用户注册成功,用户登陆后,就可以进行有效的购物了。

其流程图如图所示:图2-2注册功能流程图2.2.3 用户登陆流程用户登录,首先要有一个提供用户登录的表单。

用户登录的表单应该嵌入整体的结构当中。

在实际的应用中,可以这样设计,如果用户没有登录,则在页面中显示用户登录的选项,用户登录后,则可隐藏用户登录的选项而代之以用户的个人信息管理链接。

首先,用户要有一个用户名和密码。

商务网站需要很高的稳定性和安全性,因此对用户名不允许使用恶意的代码作为用户名而使用真实姓名。

同时对密码也要求保密,将密码加密后再存入数据库。

另外,还需要用户的性别、地址、E-MAIL、邮编、电话号码等。

系统确定用户登陆信息无误后会将用户User信息存入JSP页面Session中以便用户进行后续操作。

用户的登陆流程图如图所示:图2-3用户登陆流程图2.2.4 购物车流程购物车的具体实现可采用这种形式:定义一个购物车的类,其属性为每一条记录Item ,每条记录Item 的价格Cost ,Item的Map 以及若干方法的定义。

1.列出商品的列表,使用户能够自由选择所需要的商品。

2.当用户在点击“添加到购物车”的链接时,执行如下功能:检查用户购物车类是否存在。

如不存在,则建立,并注册这Session 变量;在有用户购物车类存在的情况下,检查该类中是否有该商品。

如存在,则商品数量相应加1;如没有该商品,则将该商品添加到该类中。

3.对放入用户购物车的各条记录Item 可以进行数量的修改、删除及清空购物车等操作。

图2-4购物车流程图2.3 数据库设计数据库结构设计使用的数据库管理系统以及系统开发工具设计出数据库以及各个数据表的结构。

此次设计根据数据的大小以及管理的便捷性选择MySql作为数据库管理系统,使用数据管理器创建数据库。

按照前面分析的系统,设计出系统数据库中的各个数据表。

客户的Id也可设置成Integer类型值自动生成,为其主键。

密码的长度最长可达16位,Name为Varchar,长度为16位。

Address、PostCode、Email及Remark均为Varchar 型。

对于用户的话号码,考虑到个人的不同情况以及其他一些特殊情况,电话号码均为Varchar型字段,且只有移动电话为Not Null。

加语句时,可以不管Id属性,每次加入一条记录Id值自动加1。

Id、Name、Price字段均不能为空,Description为对该商品的说明,长度为100,可以为空。

订单的主键Id为Integer型,编号值自动生成。

状态字段Status设置成Integer型,由管理员设置值为1或者2。

1代表订单未交付即交易未完成;2代表订单已经下达,交易已经完成,即历史信息。

Cost字段是该订单所需价钱,即交易时用户应付商品的费用(不含运费)。

字段名描述类型长度可为空主键Id条目编号Integer是Amount价格DoubleProduct_Id商品编号IntegerOrder_Id订单编号IntegerId也是Integer类型,自动生成其值。

Amount价格指某一种类商品的单价而并非总价格,这是为了方便网站后台管理人员。

该表查询及修改数据库采用关联,Product_Id和Order_Id均为Integer类型,是分别为了确定其商品和订单号以方便送货。

2.4 系统界面实现界面设置原则要求简单易用、简洁明了、兼容性好、标准、规范。

制定界面设计标准规范的目的是为了规范和统一软件界面设计制定软件界面设计标准与规范。

首先考虑标准化,在标准化的基础上进行界面的美工设计。

其次进一步完善程序的界面设计。

对界面进行的优化不要使界面的操作变得困难。

2.4.1 登录界面的实现该界面是用户登录的界面,用户从此界面登陆,可对商品进行操作。

用户要有一个用户名和密码。

商务网站需要很高的稳定性和安全性,因此对用户名不允许使用恶意的代码作为用户名而使用真实姓名。

同时对密码也要求保密,将密码加密后再存入数据库。

图2-5登陆界面2.4.2 商品列表界面的实现该界面显示的是商品列表,用户可在此界面对商品进行浏览,选择自己需要的商品放进购物车中,若未登录,也可以使用登录键进行登录操作。

或使用购物车键进行查看所购商品的操作。

也可以在登录界面进行结账操作,直接跳转到操作账单页面,对所需的商品进行最终的确定。

图2-6商品列表界面2.4.3 购物车页面显示购物车页面是对所购商品的再操作,对所选商品进行删改数量,删除所选商品,若所选商品不是自己需要的,可以进行删除商品,也可以对商品直接进行清空。

每个商品后跟的都是商品的单价,修改商品数量后,商品的价格变为所购商品的总价。

从此页面也可跳转到商品列表页面继续进行购物,选新的商品添加到购物车中。

若是已经购买了所需商品,就可以进行结账操作,进入账单操作页面。

图2-7购物车界面2.4.4 操作订单界面显示对所选商品进行再确定,对登录用户的资料进行确认,对有改变的资料进行修改,而且用户资料必须符合一定的格式,若不符合就报错不能进行修改,因此,例如邮政编码必须是6位数字,因此必须是输入6个数字,输入多或少都是错误修改,无法成功修改。

相关主题