基于J2EE的网上商城毕业论文

上传人:沈*** 文档编号:105107212 上传时间:2022-06-11 格式:DOC 页数:38 大小:671.50KB
返回 下载 相关 举报
基于J2EE的网上商城毕业论文_第1页
第1页 / 共38页
基于J2EE的网上商城毕业论文_第2页
第2页 / 共38页
基于J2EE的网上商城毕业论文_第3页
第3页 / 共38页
点击查看更多>>
资源描述
工业贸易职业技术学院软件技术 专 业 毕业 设 计(论文)设计题目:基于J2EE的网上商城毕业论文 指导教师: 胜龙 班 级: 软件技术(3班) 学生: 朱志鹏 2013 年 12 月 1 日毕业设计说明书(论文)中文摘要进入21世纪以来,随着整个互联网的发展,传统的购物方式虽然仍然处于市场的主导地位,但是这种方式并不具备便捷、随意、时尚等网络购物具有的优势,所以网上购物商城不仅正在以迅猛之势席卷整个网络,而且还为购物市场做了一次革命性的改变。网上购物商城是电子商务中一个重要的组成部分,通过对企业和客户进行调查研究,开发了网上购物商城系统。本系统主要分前台管理和后台管理,前台包括商品展台、购物车、收银台、会员管理、商城公告与订单管理等功能;后台只要是针对商城的一些基础数据进行管理,包括后台登陆,商品设置,会员设置等功能。本系统使有jsp进行网页界面的设计,使用MVC设计模式,采用了开源框架Struts,它采用了当今软件设计的最新技术,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。本系统过JDBC驱动和数据库进行无缝连接,后端的数据库是sql,该数据库具有较高的完整性,一致性和安全性。关键词 网上购物商城 MVC jsp struts38 / 38毕业设计说明书(论文)外文摘要Title J2EE based Online Shopping Mall Design and ImplementationAbstractSince stepping into the 21st century, with the development of the Internet, the traditional way of shopping in the market, though still dominant, this approach does not possess the easy, casual, fashion and other advantages of online shopping. Therefore online shopping mall is not only rapidly sweeping the entire network, but also leads the shopping market a revolutionary change. Online shopping mall is an important part of E-commerce, the online shopping mall system is developed through research on enterprises and customers. The system mainly consists of front management and back office management, in which the reception includes merchandise booth, shopping cart, checkout, membership management, mall bulletin and order management functions, while the background is for some of the basic data management of the mall, including background landing product set, membership set functions.The system is contrived with Java Server Pages Technology as well asStruts, the software design mode of MVC with open source framework technology, which makes this system have the advantages of efficiently designed with beauteous and friendly interface.This system use JDBC driver to connect the sql database server.The database was designed with highly integrity, security, and consistency.Keywords online shopping mall MVC jspstruts目 次1.引言(或绪论)11.1网上商城介绍11.2 对网上商城的深入调查11.3 课题意义21.4 论文的工作和安排22.网上购物商城需求分析42.1 可行性分析42.2 网上购物商城需求概述42.3 网上商城系统需求模型53.总体设计83.1 数据库设计83.2 系统总体结构设计134.系统详细设计144.1开发平台与工具144.2数据库与Web服务器的连接164.3前台界面164.4后台界面235.软件测试275.1系统关键部分测试分析275.2 单元测试275.3 评价296.结束语306.1 工作成果306.2 改进意见306.3 收获体会30结论32致33参考文献341 引言Internet奇迹般地改变着我们的生活。打开电脑,轻击鼠标,叩开商店大门,通过网上购物,这一切已不再是梦想。电子商务从90年代初期兴起以来,已从网上购物扩展到了银行、证券业的运营,成为一种通过网络技术的应用,快速而有效地进行各种商业行为的最新方法。电子商务在今天已被认为是继电子出版和电子之后在Internet上的又一焦点。国际互联网(Internet)在商务中广泛、深入的应用,宣布了电子商务时代的来临,不久,将有60%的商务活动在网上运行,您准备好了吗?企业如果不开展电子商务,将丧失21世纪国际贸易的“球籍”,您不心急?电子商务是通过互联网实现企业、商户与消费者的网上购物、网上交易与在线电子支付的一种不同于传统商业运营的新型商业运营模式,电子商务是随着INTERNET发展而发展起来的,主要以EDI(电子数据交换)和INTERNET来实现的,电子商务有广义和狭义之分,狭义的电子商务是主要利用WEB在网上进行交易,称作电子网易(E-COMMERCE)。广义的电子商务包括基于WEB的全部商业活动,称作电子商业(E-BUSINESS)。1.1网上商城介绍目前常说的网上商城(有时也称为网络商店,或者简称网店),通常是指建立在第三方提供的电子商务平台上的、由商家自行开展电子商务的一种形式,正如同在大型商场中租用场地开设商家的专卖店一样。在电子商务发展的早期,一些网上零售也称为网上商店,如当当网上书店、亚马逊网上书店等,随着这些网上零售的快速发展,其经营商品品种越来越多,规模也越来越大,因此这些独立的电子商务通常都不再称为网上商店,而改称“网上商城”了,一些大型电子商务除了自己销售产品之外,也可能为其他企业提供租用网上商店或者开设网上专卖店的业务,因此如果继续叫做“网上商店”的确也不能确切描述其全部含义。本系统主要实现的是数码产品的销售。1.2对网上商城的深入调查经过以上的初步调查和研究,并且确定了该平台的可行性,并决定开发本平台,为了能够对现行的平台容进行充分了解,使所要开发的平台更具有实用性和适应性,通过调查和指导老师的耐心介绍,设计出该平台功能如下:1. 能够完成用户基本信息录入的注册和用户基本信息的个人前台与后台管理。2. 能够完成管理员对的商品资料(商品添加、商品审查)会员管理(会员审查)、信息管理(新闻添加、修改删除、公告设置),以与常规设置(广告添加,友情)的功能。3. 能过电子商品的名称,电子商品的分类进行搜索。4. 能够通过查看购物车对所选商品进行确定、挑选,通过定单查询对支付费用进行确定。1.3 课题意义也许你曾有过这样的经历:为了买一样东西而跑遍大半个城市,或者挤进人流非常密集的场所。现代化生活的节奏越来越快,我们需要的是快捷、便利的购物方式,因此,如何改善购物的便利,就显得迫在眉睫了,而Internet的高速发展为我们提供了这样的购买方式通过网络选购想要的产品。通过网上商城,你可以在最短的时间查找到所需的数码产品,然后选择最优的投递方式把您选择的商品送到您的手上,从而大大节省我们彼此宝贵的时间。当然,你还可以在第一时间了解到商城引进的新产品,或者在里面浏览,以找到自己感兴趣的数码产品,这一切,都将在您点击鼠标的过程中轻松完成,从某种程度上说,这更有利于文化知识的传播。1.4 论文的工作和安排本次设计的目标是,开发一个网上商城购物系统。借助该系统,管理员通过快捷可靠的数据库管理,添加商品的信息和系统的一些公告、,规会员信息,设定不同用户权限,管理后台货物的发送和设置一些特价商品,让会员能很好地在网上商城愉快地购物。论文设计和实现了网上商城系统,论文分为五个部分:第一章即本章引言,简述网上购物商城这个课题背景以与开发本系统的意义。第二章为需求分析,本章中明确了系统需要实现的功能,分析了系统的用例,并介绍根据系统的需求选择的开发工具和技术的概况。第三章是总体设计,详细描述了本系统中数据库的设计情况,并给出了系统总体界面的设计方案。 第四章系统详细设计,同时提供了主要界面运行的参考图片,以更直观了解系统的实现情况。第五章是软件测试,测试系统功能实现并对测试结果进行记录分析第六章为结论,为此次毕业设计做一个总结,总结所获得的经验和体会。2 网上购物商城需求分析2.1 可行性分析网络平台已经成为企业经营管理中一个不可忽视的重要方面,拥有一个全面的、功能强大的、操作简单的网络购物商城已经成为企业营销发展的一个必然趋势。网上购物商城的建立,从销售方面讲,不仅给企业增加了一个新的销售渠道,而且方便客户购买与了解公司的产品与新的销售方向;从企业宣传方面来讲,不仅提高了企业的知名度,还更直观地展示了企业的产品,为企业的宣传起到一个非常重要的作用。2.2 网上购物商城需求概述2.2.1系统目标由于网上商城的特点,整个系统会频繁地与数据库进行交互,对于像网上商城这样额数据流特别大的网络管理系统,必须满足使用方便,操作灵活等要求。本系统设计的满足一下几个目标。 采用人机对话的操作方式,界面友好美观,信息查询灵活,数据库存储准确、安全可靠 全面展示购物商城的所有商品,并且可以展示最新商品和特价商品 便于顾客快捷地进行修改商品信息查询 会员可以随时修改自己的基本资料 实现商品销售排行功能,以方便顾客了解本购物商城中的热销商品和帮助企业领导者做出企业营销方案。 商城公告公布购物商城中心的最新信息 顾客可以随时查看自己的订单信息 对顾客输入的数据,系统进行严格的数据校验,尽可能排除人为的错误 系统最大限度的实现了易维护性和易操纵性 系统运行稳定、安全可靠2.2.2用户类和用户特性网上购物商城是一个基于B/S模式的电子商务系统,它的用户主要是购物者(会员)和商城管理员,购物者通过该系统进行商品查询进而对自己需要的商品进行购买与自己的购物车情况进行查询,商城管理员则通过本系统后台管理实现对商城商品与会员的高效管理。二类用户的具体描述如下表所示:表2.1用户具体描述用户类描述会员会员是该系统的重要的使用角色,他们通过该系统查询自己需要的商品信息,并将商品添加至购物车,填写购物相关信息,付完款以实现购买。并且可以随时修改自己的基本资料等基本操作。后台理员后台管理员是该系统的另一个重要使用者,管理员通过该系统进行商品的增加,修改,删除,分类管理等操作,实现对会员购买货物的发货等操作,实现对系统中商品,会员资料,会员购买情况的查询,商城公告,友情更改维护等操作。2.3 网上商城系统需求模型2.3.1功能描述网上购物商城系统的主要任务是实现购物者迅速检索查询,方便添加商品至购物车,后台管理员高效的完成系统后台数据的各项基本操作,设置商城的商品,会员的资料等,从图2.1可以看出网上购物商城系统要完成的功能:下面的系统用例图描述了整个系统用户之间的动作联系,与功能模块的概述图2.1系统用例图2.3.2后台管理员详细功能描述1. 会员设置功能:对会员的基本信息进行管理,包括添加,修改,删除会员的相关信息,删除一些恶意注册的会员信息。2. 商品设置功能:包括对商品信息的管理,可以增加,修改,删除图书,丰富具体类别商品的信息,对商品进行分类操作。3. 订单管理功能:可以完成对订单的发货处理。4. 商城公告设置功能:对商城公告进行不定期增加、删除、修改5. 修改密码功能:可以修改自己的登录密码。2.3.3会员详细功能描述1) 修改登陆密码:修改自己的登录密码。2)找回密码功能通过自己的密码保护功能找回密码。3)购物车功能登录后添加商品至购物车,进行付款购买2.3.4主要用例的用例描述网上商城系统涉与到的用例包括:商品购买,订单发货,会员信息管理,商品信息管理,会员管理等,现就系统的主要用例商品购买,订单发货进行详细分析。1) 用例“商品购买”表2.2 商品购买用例表用例名称商品购买标识符UC-1参与者会员,后台管理员描述会员可以通过查询等方式获得自己想购买的商品名称等信息,向服务器提出请求,添加至购物车,后台管理员在后台处理相应信息,将订单状态提交为发货,购买成功。前置条件1. 登录;2. 进入购物车页面后置条件1 更新订单列表; 主干过程1.0 购物车1. 会员选择所需的商品,添加至购物车2. 系统显示会员的购物车详细情况3. 会员填写资料付款4. 系统存储会员的订单,并将之存储到数据库中被包含用例无被扩展用例无优先级高2) 用例“订单发货”表2.3 订单发货用例表用例名称订单发货标识符UC-1参与者后台管理员描述后台管理员将未发货的订单提交为发货前置条件1. 登录;2. 进入后台订单管理页面后置条件1 更新订单列表; 主干过程2.0 订单发货5. 系统显示该会员的订单信息表6. 管理员更改订单状态,系统存储归还信息,将之存储到数据库中7. 系统更订单列表被包含用例无被扩展用例无优先级高3.总体设计3.1 数据库设计3.1.1数据库设计概述数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述。数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库与其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是式,式是符合某一种级别的关系模式的集合。一般人们设计数据库遵循第三式。即:数据库表中不包含已在其他表中包含的非主关键字信息。采用式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。整个系统所包括的信息有商品信息,会员信息,大分类信息,小分类信息,管理员信息,订单信息,订单明细表,公告信息表,友情信息。可将这些信息抽象为下列系统所需要的数据项和数据结构:1)商品信息(数据库流水号,大类别Id,小类别表的Id,商品名称,商品生产商,商品介绍,商品添加时间,现价,特价价格,购买次数,是否是特价商品)2)会员信息 (数据库流水号,会员名称,会员密码,会员真实,会员年龄,会员职业,电子,找回密码问题,找回密码答案)3)大分类信息(数据库流水号,商品大分类名称,创建时间)4)小分类信息 (数据库流水号,商品大类别的Id,商品小类别名称,创建时间)5)管理员信息(数据库流水号,管理员账号,管理员密码,管理员名称,是否为管理员标识)6)订单信息(数据库流水号,商品订货的编号,会员编号,会员真实,订货地址,订货,付款方式,运送方式,备注信息,发送货物是否成功)7)订单明细 (数据库流水号,订货编号,商品编号,价格,订货数量,创建时间,)8)公告信息 (数据库流水号,公告标题,公告容,公告发布时间)9)友情信息 (数据库流水号,地址名称,地址,图片地址,创建时间)在这里使用E-R图描述了网上商城系统的数据模型。图3.1网上商城系统E-R图描述了该系统所涉与到的实体以与他们之间的关系。具体结构如下图所示:图3.1 系统E-R 图3.1.2商品信息表结构设计 该表主要用来保存各种商品的相关信息,例如商品名称、类别、商品介绍、价格、是否为特价商品等。表具体设计结构如下 :表3.1商品信息表tb_goods字段名称数据类型字段长度主键否说明IDint4数据库流水号 bigIdint4大类别的编号smallIdint4小类别表的外键GoodNamevarchar50商品的名称表3.1续 商品信息表tb_goodsGoodFormvarchar50商品的生产商introducetext16商品介绍CreaTimedatetime4商品添加时间NowPricemoney8现价FreePricemoney8特价价格numberint4购买次数markbit1书否为特价商品3.1.3商品大分类信息表结构设计 该表的设计主要用来保存商品类别的类别信息。表3.2商品大分类信息表tb_bigType字段名称数据类型字段长度主键否说明ID int4是数据库流水号bigNamevarchar50商品大类别名称creaTimedateTime4创建时间3.1.4商品小分类信息表结构设计 类信息表主要用来保存商品类别中的小的类别信息,包括大分类信息表的编号、小分类名称以与创建时间。表3.3商品小分类信息表tb_smallType字段名称数据类型字段长度主键否说明IDint4是数据库流水号bigIdint4商品大类别外建表smallNamevarchar50商品小类别名称creaTimedatetime4创建时间3.1.5订单信息表结构设计此表的设计主要用来保存订单的概要信息,包括用户订单的相关信息,除了用户的送货相关信息之外,还有一个货物是否发送成功的标识。表3.4 订单信息主表tb_order字段名称数据类型字段长度主键否说明ID int10数据库流水号numbervarchar50是商品订货的编号namevarchar50会员的编号reallyNamevarchar50会员真实addressvarchar50订货地址telvarchar50订货setMoneyvarchar50付款方式postvarchar50运送方式bztext16备注信息signbit1发送货物是否成功3.1.6订单明细表结构设计该表的设计是用来保存订单详细信息,主要包括订单的商品名称、数量、价格等。表 3.5订单明细表 tb_orderDetail字段名称数据类型字段长度主键否说明ID int4数据库流水号OrderNumbervarchar50外订货编号goodIdint4商品编号pricefloat8价格numberint4订货数量CreaTimeDatetime4 创建时间3.1.7会员信息表结构设计会员信息表主要用来储存所注册会员的信息,主要记录了会员的名称、密码、真实、年龄、职业、电子、找回密码的问题与答案等信息。这个数据表在会员注册和登录的时候都会是使用到。表 3.6会员信息表tb_member字段名称数据类型字段长度主键否说明ID int4数据库流水号namevarchar50会员名称passwordvarchar50会员密码reallNamevarchar50会员真实ageint4会员年龄professionvarchar50 会员职业E-mailvarchar50电子qestionvarchar50找回密码问题resultvarchar50答案3.1.8管理员信息表结构设计该表的设计用于保存管理员的信息,包括账号,密码,名称,是否为管理员标识等,其中0代表是管理员,1代表不是管理员。表 3.7管理员信息表tb_manager字段名称数据类型字段长度主键否说明ID int4数据库流水号accountvarchar50管理员账号passwordvarchar50管理员密码namevarchar50管理员名称signbit1标识3.2 系统总体结构设计该系统在Windows98/2000/XP环境下,主要采用JSP开发工具, SQL数据库来设计,开发过程与成果应符合GB/T 11457-1995软件工程术语,GB/T 8567-1988计算机软件产品开发文件编制指南等。3.2.1网上商城总体结构图绘制系统结构图的过程,实际上就是对系统功能模块进行分解设计的过程,即合理地将数据流程图转变为所需要的系统结构图。系统结构图将会使用户能直观的了解系统的结构模式,理解系统的各个功能的结构,能很好地方便用户使用和理解整个系统。本系统的结构图如下:图3.2系统总体结构图4 系统详细设计4.1开发平台与工具4.1.1 J2EE平台 J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如编写一次、随处运行的特性、方便存取数据库的JDBCAPI、CORBA技术以与能够在Internet应用中保护数据的安全模式等等,同时还提供了对E(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以与XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以与可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持EnterpriseJavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。 在开发网上购物商城系统的过程中,应用Myeclipse6.0,它可以在数据库和J2EE的开发、发布,以与应用程序服务器的整合方面极大的提高工作效率。Myeclipse是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL。4.1.2 Struts的工作流程 对于采用Structs的框架的Web应用程序,在Web应用程序启动时候就会自动加载并初始化Action Servlet,Action Servlet从structs-config.xml文件中读取配置信息,然后将这些信息存放到各种配置对象中,例如Action的映射信息存放在Action Mapping对象中。当Action Servlet接受到一个用户请求时候,将执行以下流程:(1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效的信息。(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把用户提交的表单数据保存到ActionForm对象中。(3)根据配置信息决定是否需要进行表单验证。如果需要验证,就调用ActionForm的validate方法。(4)如果ActionForm的validate方法返回null或者返回一个不包含ActionMessage的ActionErrors对象,就表示表单验证成功;如果ActionForm的validate方法返回一个或多个ActionMessage的ActionErrors对象,就表示表单验证失败,此时ActionServlet将直接把请求转发给包含用户提交表单的JSP组件,在这种情况下,不会再创建Action对象并调用Action的execute方法。(5)ActionServlet根据ActionMapping实例包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute方法。(6)Action的execute方法返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指向的JSP组件。(7)ActionForward对象指向JSP组件生成动态网页,返回给客户。4.1.3 WEB服务器和数据库在系统的开发过程中使用的Web应用服务器是Tomcat,是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、SUN和其他一些公司与个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规总是能在Tomcat 中得到体现。Tomcat是一个小型的轻量级应用服务器,它运行时占用的系统资源小、扩展性好、支持负载平衡和服务等开发应用系统常用的功能,因此在中小型系统和并发访问用户不是很多的时候,经常被使用。为了开发的便捷快速,使用struts第三方插件。Struts是一个全新的MVC框架,实在WebWork基础上发展起来的。开发系统用的系统工具如表4.1所示:表4.1 系统开发平台和工具工具名称用途JDK 1.6.0_11MyEclipse SQL2005Tomcat 6.0Struts 1.2Java 开发工具包J2EE集成开发环境数据库管理系统Web应用服务器第三方插件,可扩展的Java EE Web框架4.2数据库与Web服务器的连接数据库连接时采用连接池技术SQL,具体代码实现如下:publicclass JDBConnection private String dbDriver = .microsoft.sqlserver.jdbc.SQLServerDriver; /数据库的驱动private String url = jdbc:sqlserver:/localhost:1433;databaseName=db_shopping; /URL地址public Connection connection = null;public JDBConnection() try Class.forName(dbDriver).newInstance(); /加载数据库驱动 connection = DriverManager.getConnection(url, sa, sodi); /加载数据库catch (Exception ex) System.out.println(数据库加载失败);4.3 前台界面前台部分由用户使用,包括用户注册,购物车管理,订单管理,个人资料管理等几个部分。(1)模块功能介绍会员管理:为了便于的管理,必须有一套完整的会员管理体系。该会员管理模块由用户注册,用户登陆,找回密码3部分组成。订单查询:登陆用户可以通过订单号查询订单。购物车:所选商品须通过购物车进行保存,然后生成订单。会员资料修改:为了保护用户信息不受非法侵害,用户登陆后即可对个人的注册信息进行修改。(2)前台文件构架本网上商城的前台文件结构如图4.1所示。前台首页网站导航左侧导航后台入口订单查询购物车清空购物车收银台结账会员资料修改查看订单登录注册会员注册信息管理员登录找回密码图4.1 前台文件结构图(3)前台首页的运行结果如图4.2所示。图4.2前台首页图4.3.1 用户登录模块用户登陆模块是防止非法用户登陆的第一道防线,通过它可以保护后台数据库的安全性,当用户要进行定购时,首先要进入的就是身份验证界面,只有在密码正确的情况下才能进行以后的购物,如果输入的密码不正确,则不能进行定购。如果用户以浏览者的身份进入,则只能进行一般的商品浏览和搜索,而不能进行选购,在点击添加购物车后,系统会判断该用户是否是登陆用户,如果不是则弹出提示页面,提示用户必须先登陆才能定购商品,如果是第一次登陆,请先注册。登录界面如下:图4.3会员登录界面在这个模块的实现中,我们配置了structs-config.xml配置文件,当登录的时候会相应请求ActionServlet,本模块中的配置文件中的关键代如下: 如果用户还不是会员则提示用户进行注册,用户提交信息之后,系统开始判断用户的注册信息是否有效,首先是用户名是否为空,(该处存在用户名命名规则的问题,后面问题中会详细解决)用户输入的两次密码是否一致,然后依次往后判断用户所填写的各项信息是否符合要求,直到所有信息均正确无误,系统将该用户注册信息写入会员表即member并提示用户注册成功,用户登陆后,就可以进行有效的购物了。注册页面的效果图如下:图4.4 会员注册页面4.3.2购物车模块在这里,我先介绍一下购物车的主要表现为:用户信息和权限相关功能的实现方法,就是选购的物品要一件一件地放进购物车,然后生成订单,继而生成订单进行查询和修改,最后还要进行订单处理。现在就介绍购物车的工作原理吧,其实原理并不复杂,我们是把用户所选购的所有商品的信息全部记录在用户的Session中,用户所选购的商品信息我们是把它封装处理到一个Bean中后才保存到Session中的。本模块主要包括以下功能:添加购物车,查看购物车,生成订单,清空购物车。(1)添加购物车添加购物车就是用户选中的商品暂时放在购物车中。当用户在前台首页中单特价商品或者新品上架的“查看详细容”超级,可以暂时查看出该商品的详细信息,如图所示:图4.5 查看详情页面实现添加到购物车的关键代码如下:int goodsID=Integer.parseInt(request.getParameter(goodsId);float goodsPrice=Float.parseFloat(request.getParameter(price);SellGoodsForm sellGoodsForm=new SellGoodsForm();sellGoodsForm.ID=goodsID;sellGoodsForm.price=goodsPrice;sellGoodsForm.number=1;boolean flag=true;Vector cart=(Vector)session.getAttribute(cart);if(cart=null)cart=new Vector();elsefor(int i=0;icart.size();i+) SellGoodsForm form=(SellGoodsForm)cart.elementAt(i);if(form.ID=sellGoodsForm.ID) form.number+; cart.setElementAt(form,i); flag=false; if(flag)cart.add(sellGoodsForm);session.setAttribute(cart,cart);out.println(alert(购买商品功!);window.close(););以上代码流程是从session中读取cart对象,如果为空,说明还没有进行购物或者已经清空购物车,需要新建购物车对象,再将商品名称与购物车列表中的商品名称进行对比,如果已经存在,则把商品数量加1。(2)查看购物车购物车页面主要是用于显示用户所选择的商品信息以与每种商品的数量,单价,最后还要包括所选择商品的总价钱,如图4.6所示: 图4.6购物车界面用户可以在文本框中输入想要购买的数量,然后确定购买数量,而要特别注意的是检查商品金额的计算是否正确。页面会自动刷新,更新购物车的商品价格,单击“去收银台结账”按钮,可以转向收银台页面,供用户进行填写相关资料来付款。它采取的办法是先将购物车中该商品的订购记录删除。然后在重新增加,之所以这样做是因为购物车中的订购记录都是记录在存中的,而如果需要对数据库进行操作则最好不要这样,在记录上进行修改将会得到更高的效率。(3)清空购物车清空购物车是指当用户订单生成后,一定要将清空购物车再选择商品,这样防止重复购物,其实清空购物车实现很简单,只需要将session中存储的cart对象清空即可,session.removeAttribute(“cart”)这句代码即可实现。4.3.3订单和购物清单查询在完成了购物车之后就可以实现拥有商品的功能了,也就是将用户选择的商品生成一个订单。用户的订单信息需要保存到在两个表中:tb_order表和tb_orderDetail表。tb_orde表用来保存订单的基本信息,例如:订货人,地址,等。tb_orderDetail表用来保存订单中包括的商品信息,例如:购买的商品,商品价格以与数量等。(1)编写定单的基本信息ActionForm这里是根据已经定义的tb_order表来完成相应的ActionForm。首先来实现tb_order表所对应的ActionForm,在这个类的开始首先定义了订单状态的常量,这样可以避免程序中使用不能确定含义的整数处理订单状态的情况出现,增强了程序的可读性。(2)订单查询页面在关于订单功能的操作中,主要涉与到了3个页面,包括:生成订单页面,订单提交结果页面,订单列表页面。 A生成订单页面生成订单页面主要是供用户输入收货人的,等送货信息,如图4.7所示。图4.7订单提交页面在这个页面中,为了减少用户的输入量,系统将用户自己设置为默认的收货人,而相应的其他信息的默认值也是用户在注册时填写的信息。在这个页面中是通过从Session中得到用户基本信息。B订单提交结果页面下面要完成的是订单提交后的提交结果页面,它的主要功能是将用户订单相关的信息再一次显示出来,以便用户可以核实,与时发现是否有填写错误等问题,如图4.8所示。图4.8订单提交页面这个页面需要后台处理的数据是刚才所生成的订单对象,而这个页面中的具体订单条目的信息仍然取自购物车,这样避免了需要查询数据库的麻烦。C订单列表页面下面订单列表的页面在很多地方都能用到,例如,可以用于显示未处理、正在处理、已处理的订单列表,也可以用于显示历史订单列表,还可以用于显示订单的查询结果等,如图4.9所示。图4.9订单列表页面这个页面的实现比较简单,只是将后台Action查询出来的订单信息一一显示出来,并提供查看明细,供用户查看每个订单的详细信息。4.4后台界面网上购物系统除了能够让用户实现前台的浏览和购物等操作之外,还必须能够使管理人员能够对系统的各种信息进行维护,比如商品的增加、删除、修改,会员的审查,新闻的更新等等。管理功能是网上购物系统相当重要的一部分功能。进入之后系统管理的主页面 采用了框架结构,左边是一个树型菜单,右边显示具体信息。管理的主要功能有商品信息的更新,会员信息维护,信息维护,广告设置等四大块。本网上商城的后台文件结构如图4.10所示。后台界面商品设置显示商品添加商品订单设置删除执行订单友情链接设置会员设置显示详情删除会员公告设置公告处理4.10 后台文件结构图4.4.1商品设置模块商品信息管理,主要就是添加新的商品,删除和修改已经添加的商品。如下图所示图4.11 商品管理界面这部分主要对是数据库的操作,所以sql语句的编写特别重要,相关sql代码如下所示:商品详细信息:String goods_selectOne = select * from tb_goods where id=? order by id DESC;删除商品:String goods_delete=”delete from tb_goods whre id=?”;修改商品信息:Stringgoods_update= update tb_goods set goodsName=?,bigId=?,smallId=?where id=?;4.4.2会员设置模块会员信息管理,则主要是对一些恶意注册用户进行删除,如下图图4.12会员信息管理界面这部分的sql代码如下所示:会员详细信息:String member_select = select * from tb_member order by id DESC;删除会员:String member_insert = insert into tb_member values (?,?,?,?,?,?,?,?);4.4.3会员设置模块商品订单信息管理,主要是会员的订单进行查看,进行出货,删除,如下图:图4.13商品订单信息界面相关sql代码如下所示:订单详细信息:String order_select = select * from tb_order order by id DESC;删除订单:String order_delete =delete from tb_order where number=?;是否发货:String order_updateSign =update tb_order set sign=1 where number=?;4.4.4 公告设置模块公告设置模块,进行网上新闻的发布,修改删除,以与系统公告等信息的设置,这些功能虽然无关紧要,但在实际中却能方便用户,提高效益。图4.14 公告信息管理界面公告信息,可进行一些广告信息的发布,与更新和修改,主要是发布一些促销信息,能够给自己带来一些经济上的收益。在完成系统的更新之后,作为管理人员,应该与时注销自己的,树型菜单的上方提供了注销登陆的选项,点击之后,注销用户,并返回到前台页面,防止他人恶意修改信息,造成不必要的损失。以上两个部分都是比较简单的功能实现,具体实现过程与前几个类似。5.软件测试5.1 系统关键部分测试分析系统完成之后,对各个模块的功能进行了详细的测试,输入数据和预测输出数据相比,发现了一些问题。主要是在查询过程中预计查询结果和实际结果不一致,有时候达不到目的,对数据库的操作表之间的关联考虑得不够周到,因此往往会出现一些小的错误。还有查询条件的前后数据类型不一致也是一个很常见的错误,需要靠一步步的查找解决。各个模块组装完成后,又会出现一些问题。比如在操作购物车结帐的这个流程中,由于是多次添加和修改,最后结帐,所以很容易造成数据混乱,必须对相应的数据关系理清楚,一些关键查询统计的SQL语句必须反复斟酌才能放在程序中使用。5.2单元测试分析5.2.1登录模块测试当用户输入正确的用户名wangxin和密码111,系统跳转到登陆成功页面;当输入空用户名,提示请输入用户名;当输入用户名和空密码,提示请输入密码;当输入用户名和错误的密码,提示您输入的用户名或密码错误。当用户输入的用户名或密码错误是系统会跳转到出错页面并提示“您输入的用户名或密码错误”,用户点击确定,系统会重新返回登陆页面,其中错误信息提示页面如图5.1所示:图5.1 系统出错提示页面 5.2.2更改密码模块测试用户登录系统后可对自己的登录密码进行更改,更改过程要求用户提供原始密码,输入新密码,重新输入新密码进行确认,如果用户输入的原始密码错误,或两次输入的新密码不一致将无法执行密码更新操作,系统会给出相应的提示,起显示页面为:图5.2 两次密码不一致提示页面5.2.3购物车模块测试购物车模块是我们需要特别注意的地方,因为它涉与到了我们数据库中的大部分数据,并且是进行网上交易的最关键部分。我们以用户wangxin的身份登入系统,用户名是:wagnxin 密码是:111然后点击定购商品:洗衣机 单价为5000元 弹出购物车清单:选择商品数量 2 确认 付款后进入订单查看明细,与我们估算的数据相符,如图所示:图5.3 订货明细查询图一此时选择清空购物车,继续购物,与我们估算的数据也相符,证明清空购物车的功能正常有效,并没有将我们第一次选购的物品计算在,价格的计算也正确无误,如图所示:图5.4订货明细查询图二5.2.4测试分析总结与说明在测试过程中,我经过模块测试和组装测试,排除了系统的大部分错误。当然排除所有错误是不太可能的,我想应该还有些不易检测到的错误还没有被发现,需要在使用的过程中进一步的完善,数据库的加密是一个重要的概念,在实际的应用过程中是一个尚待解决的问题,应该做好数据库的完善工作,特别是备份和安全工作。5.3 评价通过单元测试,查找出了系统各模块部的错误,发现了模块间相互协调和通信上的错误。通过改正错误的设计和实现部分,保证了网上商城系统可以完成需求分析中制定的需求。从上面的测试中可以看出,此系统可以完成用户登录、系统设置、商品管理、会员管理、订单管理等功能。会员在本系统的应用下可实现按照各种种类(如:电器,书籍,食品)查询商品,方便的把商品加入购物车,付款购买,能够查询自己的购买情况。后台管理人员能够实现方便的对商品进行查询,删除和添加,方便的进行会员购买订单情况查询,进行订单发货的处理等,对会员信息进行相关添加,修改等操作。测试阶段的工作一方面发现了系统的各种错误,另外一方面也验证了修改后的系统能够实现提高网上商城工作效率的预期目的。6 结束语6.1 工作成果在MyEclipse开发环境下,以J2EE为平台,运用JSP网络编程语言和Struts框架和SQL数据库完成了B/S模式的网上商城系统。系统基本上实现了预期的各项功能,达到了任务书中的主要设计容的各项任务,整个系统也在经过测试和不断地改正之后能够顺利运行。基本上实现了开题报告中的需求设计在程序编写,该系统能够实现:1.会员在本系统的应用下可实现按照各种分类(如:烟酒,办公商品,家用电器等)查询商品,方便的添加商品至购物车,付款,查看订单 ,能够修改自己的会员资料等。2.后台管理人员能够实现方便的对商品进行查询、删除、添加、修改,方便的进行会员购买订单情况查询,方便的进行订
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!