毕业论文范文——电子商城系统的设计与实现

毕业论文范文——电子商城系统的设计与实现

ID:27319898

大小:1.17 MB

页数:31页

时间:2018-12-02

上传者:U-13160
毕业论文范文——电子商城系统的设计与实现_第1页
毕业论文范文——电子商城系统的设计与实现_第2页
毕业论文范文——电子商城系统的设计与实现_第3页
毕业论文范文——电子商城系统的设计与实现_第4页
毕业论文范文——电子商城系统的设计与实现_第5页
资源描述:

《毕业论文范文——电子商城系统的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

计算机科学与技术专业毕业设计(论文)     本科毕业论文题目:电子商城系统的设计与实现学生姓名:学号:所属学院:计算机工程学院专业班级:指导教师:职称:完成时间: 计算机科学与技术专业毕业设计(论文)电子商城系统的设计与实现摘要随着社会的进步,科学技术的不断发展,网络应用已经日益深刻地影响了人们的生活。特别是电子商务,已经成为Internet应用的重要组成部分。为了能够高效地开展电子商务活动,就需要建立一套功能完善、特色鲜明的电子商城系统。本文结合毕业设计,对电子商城系统的开发作了深入研究。本文首先阐述了课题的研究背景、目的和意义,然后介绍了开发电子商城系统所使用到的主流技术和工具。接下来按照系统开发路线图,对需求分析、系统设计及实现、系统测试等进行了较为详细的介绍和描述。系统基于B/S结构,采用了MVC设计模式,以Tomcat7.0作为Web服务器,MySQL5.6作为后台数据库,使用MyEclipse10进行系统开发,遵照JSP规范编写了页面文件,业务逻辑处理使用了Servlet,功能模块中的组件按照JavaBean标准进行了封装。系统的主要功能模块包括用户管理、商品管理、购物车管理、订单管理和支付结算等。测试表明,系统达到了预期目标,能够承载主流的电子商务活动。关键词:电子商务;电子商城;B/S结构;MVC模式;JSP;JavaBean 计算机科学与技术专业毕业设计(论文)DesignandRealizationofe-mallSystemAbstractWiththeprogressofsociety,thedevelopmentofscienceandtechnology,networkapplicationhasbecomeincreasinglyprofoundimpactonpeople'slives.Inparticulare-commercehasbecomeanimportantpartofInternetapplications.Tobeabletoefficientlycarryoute-commerce,weneedtoestablishandimproveasetoffeatures,thedistinctivecharacteristicsoftheelectronicmallsystem.Inthispaper,graduationproject,todevelopelectronicmallsystemwerestudied.Thispaperdescribesthebackground,purposeandsignificanceofthesubject,andthenintroducesthedevelopmentofanelectronicsystemusedtostorethemainstreamtechnologyandtools.Next,accordingtosystemdevelopmentroadmapforrequirementsanalysis,designandimplementationofsystems,systemtestingforamoredetailedintroductionanddescription.SystemisbasedonB/Sstructure,usingtheMVCdesignpattern,toTomcat7.0asaWebserver,MySQL5.6astheback-enddatabase,usingMyEclipse10systemsdevelopment,preparedinaccordancewiththeJSPspecificationpagedocuments,businesslogicprocessingusingtheServlet,functionalmodulesJavaBeancomponentsinaccordancewiththestandardsofthepackage.Themainfunctionmodulesincludeusermanagement,merchandisemanagement,shoppingcartmanagement,ordermanagementandpaymentsettlement.Testsshowthatthesystemreachestheexpectedgoal,cancarrymainstreame-commerceactivities.KeyWords:E-commerce;electronicmall;B/Sstructure;MVCpattern;JSP;JavaBean 计算机科学与技术专业毕业设计(论文) 计算机科学与技术专业毕业设计(论文)目录1绪论31.1课题的研究背景与意义31.2国内外研究现状31.3电子商城的模式与技术特点31.4论文的主要内容52相关技术与工具52.1B/S结构与MVC模式52.2Web服务器62.3数据库62.4页面开发72.5业务逻辑处理73需求分析83.1可行性分析83.2业务需求及处理流程93.3功能和数据需求93.4其它需求114系统设计及实现114.1数据库设计114.4.1主要业务概念建模与E-R图114.4.2逻辑数据库设计134.2界面设计与实现154.3用户相关功能模块设计与实现174.4商品相关功能模块设计与实现184.5购物车模块设计与实现194.6订单模块设计与实现194.7支付结算模块设计与实现204.8后台管理模块设计与实现20 计算机科学与技术专业毕业设计(论文)5系统测试215.1测试目标215.2测试方法225.3测试用例225.4测试结果23结束语25参考文献26致谢27第1章 计算机科学与技术专业毕业设计(论文)1绪论1.1课题的研究背景与意义随着计算机技术和网络技术的快速发展与普及,人们生活中的方方面面得到了很大的改善,越来越多的企业开始利用这一高新技术开拓新的商业运作模式,创造全新的自动化的网络经营方式,即开发和使用电子商城购物系统[[]栾培远.基于推荐子系统的电子商城设计与实现[D].电子科技大学,2012]。作为这种新兴的商业模式,突飞猛进得牵动着经济的发展,以淘宝网的发展为例[[]邵兵家.电子商务概论.北京高等教育出版社.2011.08],截至2013年底,淘宝网拥有近5亿的注册会员,在线商品数达到8亿,根据淘宝2013年10月31日的年度报告显示,淘宝网和天猫平台的交易额合计突破10000亿元,成为亚洲最大的网络零售商圈。意味着电子商务将会成为未来商品销售中不可替代的重要手段,它将带来巨大的商机和经济价值。以至于越来越多的企业投身于电子商务活动,而比较典型的手段有建立网上商店,企业网站,电子商城等。在各行各业竞争激烈的今天,提高工作效率和工作质量是每个企业必须面临并且必须解决的重要课题。有了电子商城系统这个交易平台的支撑,消费者可以快速准确得找到所需的商品,大大节约了消费者宝贵的时间。同时,电子商城系统更有利于开拓市场,对企业未来的发展有着一定的意义。1.2国内外研究现状美国是世界最早发展电子商务的国家,同时也是电子商务发展最为成熟的国家,一直引领全球电子商务的发展,是全球电子商务成熟发达地区。最深入人心的就是亚马逊,自从1995年成立到现在,已经成为美国最大的网络电子商城。但是全球的网上交易发展得很不平衡,美国由于开展较早,基础设施比较完善,消费者的消费观念和方式进步,积累的大量的经验,所以始终占据着主导地位[[]苗延先.电子商务与信息技术[M].上海财经大学出版社.2000]。亚洲作为电子商务的新秀,相比之下,我国电子商务还是比较滞后,但是经过最近几年的发展,有越来越多的人认识到电子商务的方便性和经济价值。我国电子商务虽然起步得比较晚,但随着生活水平的提高及信息技术的高速发展,人们的消费阵地逐渐转移到电子商城,这也促进了电子商务在国内的快速发展。根据CNNIC的统计显示,截止2004年1月,国内互联网用户7950万人,其中40.7%的网民有过网购的经历,并且这一数字还在以17%左右的速度增长,到2006年中国网上购物用户达到了6962万人,这意味着中国具有良好电子商务发展前景,网购这种消费模式日趋被大家所接受[[]2012年中国网络购物市场研究报告.http://www.cnnic.net.cn/hlwfzyj/[EB/OL].中国互联网络信息中心,浏览日期:2015.04.16]。1.3电子商城的模式与技术特点电子商城,也称网上商城,是电子商务基于浏览器/服务器(B/S)的典型应用,买卖的双方通过网络进行各种商务、金融、交易及相关服务活动的一种商业运营模式。27 计算机科学与技术专业毕业设计(论文)尽管电子商务在各个领域有着不同的定义,但是它的关键还是依靠着电子设备和网络技术进行的商业模式。因此,给电子商城的发展带来了良好的发展空间,也逐渐走向成熟,进一步让电子商务活跃在人们的生活中,使得这种商业模式得到普及。电子商城类似于现实生活中的商店,主要区别是它灵活运用电子商务的这种模式,使买卖的选购及咨询过程发生在网络上,减少了运输成本及代理差价等中间环节,加大了市场流通的发展空间,更大地保护了消费者的利益,也推动了公司的发展。电子商城是以Internet为桥梁的商务贸易。截至目前,电子商城的实现技术普遍使用的是WWW技术的浏览器、Web服务器和后台数据库支撑的三层结构模式,如图1-1所示。图1-1电子商城的三层结构模式用户通过浏览器访问服务器的信息,选择合适的商品进行交易的过程。在这种电子商务模式下,消费者可以在网上实现商品的查询、咨询、交易等,企业则根据客户的订单进行订单管理、订单发货的审核、商品信息管理等业务。实现电子商城系统所涉及到的技术主要是动态网站开发技术和数据库技术,就目前主流的网站开发技术而言,有ASP、PHP和JSP。ASP开发技术是将所有程序先在服务器上执行,包括嵌在HTML文本中的脚本程序,等服务器执行完毕后,服务器将执行的结果返回给客户端,这样就不必担心浏览器能否运行你编写的代码程序了。PHP开发技术结合HTML文本标签,可以实现简单而快速的编程开发,它共用3个模块:扩展层、内核以及Zend引擎,可以和MySQL完美得组合,同时PHP提供的数据接口支持彼此间也是不统一的[[]赵启鹏.基于J2EE的电子商城网上购物系统的设计与实现[D].2010.02]。JSP开发技术不仅结合了HTML的标签库,同时拥有自己的标签库,当客户端浏览器提交请求后,服务器端进行响应,其服务器调用了Java虚拟机解释执行,把显示层和业务层分离,便于更好的维护和重用。27 计算机科学与技术专业毕业设计(论文)通过对这3种开发技术的对比,本系统选择了JSP开发技术,因为它在操作数据库方面,反应速度最快;移植性方面,JSP和PHP都有很好的移植性;数据库访问方面,JSP的策略是页面和后台分离,访问者不会看到后台的逻辑,安全性最强;分布式多层结构方面,JSP可以根据实际业务实现多层次,还有比较成熟的框架。1.4论文的主要内容本论文的研究对象是电子商城系统的设计与实现,采用的是B/S架构设计,以Dreamweaver作为前台的网页开发工具,使用JSP技术进行动态页面的设计,整个系统的后台数据库采用的是MySQL进行数据管理。论文主要由以下部分组成:第1部分:绪论。主要介绍该论文当前研究的背景意义,了解电子商务在国内外的发展现状以及电子商城的模式与技术特点。第2部分:相关技术与工具。主要介绍电子商城系统的设计时所需要使用到的相关开发技术和工具。第3部分:电子商城的需求分析。主要介绍电子商城系统的可行性分析、业务需求及处理、相关的功能和数据需求以及非功能性需求分析。第4部分:系统的设计及实现。主要是从功能模块、数据库设计、界面设计等几个方面来总结电子商城的总体设计,同时对其中重要模块的设计与实现进行详细的分析。第5部分:系统测试。根据测试的目标提出测试的计划方案,对电子商城系统进行系统测试,对各模块的功能和性能进行测试分析,给出个别用例说明测试的结果,最后对系统进行测试总结。2相关技术与工具2.1B/S结构与MVC模式客户端访问系统的方式——B/S,即通过浏览器访问站点,客户端不需要另行开发,而整个系统的开发所采用的模式——MVC模式,将数据、视图和业务逻辑划分成模块开发。B/S(Browser/Server)架构是互联网流行的一种网络结构模式,它主要是基于浏览器和服务器的。由于客户端(浏览器)是统一的,系统的核心功能都是在服务器上,因此,系统的开发、使用和维护得到简化。只要更新了服务器中的程序,所有的客户端的内容都得到了同步更新。其原理就是客户端的浏览器通过Web服务器与后台的数据库进行数据交互。对于B/S架构最大的特点就是用户可以在任何地方浏览网页,不需要安装特定的软件,只要自己的浏览器接入了互联网,都能使用服务器所提供的服27 计算机科学与技术专业毕业设计(论文)务,而客户端不需要做任何更新和维护。随着B/S架构的使用越来越多,推动了AJAX技术的应用,AJAX程序能在客户端上进行部分处理,从而减轻了服务器的负担,加强了交互性,浏览器可以进行异步更新数据。MVC模式全称是ModelViewController,即模型-视图-控制器。其中,模型(Model)代表应用程序的数据以及用于访问控制和修改这些数据的业务规则;视图(View)用来组织模型的内容,视图对象使用对象模型查询的方式来获取数据,并且将数据显示给用户,就是与用户交互界面,而对于Web应用来说,就类似于HTML;控制器(Controller)是一个分发器,它不做任何数据处理,它定义了应用程序的行为,负责对来自视图的用户请求进行解析,并映射成对应的行为,让模型去负责实现这些行为[[]梁轶奎.企业电子商城平台的设计与实现[D].电子科技大学.2011]。MVC模式的优点在于它是将这三层分离的,各层各施其职,互不干涉,一旦发现哪一层需求发生变化,就只需要修改相应的层中代码,而不会影响其他层的代码。MVC模式还有利于开发的分工,按层把系统分开,然后不同的开发人员对各自的层进行开发设计。在MVC模式中,部分组件是可以重用的。2.2Web服务器Web服务器通常是指网站服务器,主要是因特网上的某种计算机程序,可以向Web浏览器(客户端)提供文档。当浏览器连接到服务器并发送请求,服务器会处理请求,将文件反馈给浏览器。Web服务器除了能存储信息,还能运行脚本和程序。现在比较流行的Web服务器有IIS,Tomcat服务器,IIS服务器主要支持ASP语言环境,IIS属于收费型服务器,它不开发代码,对于稳定性来分析,IIS服务器经常会出现假死的现象,用户需要不定期得重启服务器才能保证其正常工作。Tomcat除了可以作为Web服务器外,还可以作为应用型服务器,它是完全免费,开发源代码的服务器,它支持的语言环境有JSP及Java等,Tomcat的配置相对于IIS比较复杂,但是经过配置完毕后,可以长期得进行工作,很少出现假死等现象,在稳定上明显超越于IIS。随着进一步的了解发现,Tomcat服务器运行时占用的系统资源小,扩展性好,拥有开发应用系统常用的功能,而基于Tomcat的开发主要是JSP和Servlet的开发,这两种开发都是非常简单的。因而得到了部分软件开发商的认可,以至于成为比较流行的Web应用服务器。本系统选用的是Tomcat7.0版本的服务器作为电子商城系统的服务器。2.3数据库数据库是按照数据结构来存储、组织、管理数据的仓库,它是以某种方式组成的数据集合,其主要特点是:实现数据共享、数据的独立性、减少数据的冗余度、数据实现集中控制,由于数据的一致性和可维护性,确保了数据的安全性和可靠性。27 计算机科学与技术专业毕业设计(论文)本系统使用的数据库是MySQL,后台使用的是JDBC技术接入和调用数据库。MySQL是目前流行的开放源码的SQL数据库管理系统。数据库是数据集合的结构化实体,要想将数据添加到数据库中,访问和处理数据库中的数据时,需要调用数据库管理系统。MySQL也是关系数据库管理系统,而关系数据库将数据存储在不同的表中,这样就提升了灵活性也加强了访问速度。同时,MySQL软件是开放源码的软件,也就意味着任何人都可以使用和改变软件,MySQL数据库服务器具有可靠、快速和易用的特点[[]Resnick,Varian.Recommendersystems[J].CommunicationsoftheACM.2006.03]。而JDBC是一种用于执行SQL语句的JavaAPI,它是由一组Java编写的类和接口组成,用于实现Java程序对数据库的调用,数据库开发人员通过JDBC提供的基准,编写数据库应用程序时,它可以向数据库发送SQL语句进行调用数据库,从而可以方便地让数据库跟后台完美接入及调用[]杭海梅.基于Web的网络化虚拟仪器技术及应用[J].企业技术开发.2010.06。而JDBC连接池,是创建和管理一个连接的缓冲池技术,此连接可以被任何需要它们的线程使用。连接池可以改善用户的Java程序的性能,减少全部资源的使用,更加方便得用于应用程序与数据库之间的沟通,因此本系统选择使用的是JDBC连接池(C3P0)的方式进行数据库与系统的连接。2.4页面开发对于页面的开发,本系统主要采用的是MyEclipse10开发工具进行前台页面的设计与调试,页面部分使用的是JSP语言编写,同时使用了CSS的样式表来控制页面的样式和布局,调用了JavaScript脚本文件对页面特效等处理。MyEclipse是在eclipse的基础上,添加自己的插件开发而成的集成开发环境,它通常被用于Java、JavaEE等应用的开发,支持各类开源产品。利用MyEclipse可以极大得提高工作效率,它包含了编译、调试、测试和发布功能,完整支持HTML,JSP,CSS,JavaScript等。网站的动态页面的设计方面,本系统的前后台页面主要使用的是JSP语言,它实现了在HTML语法中对Java的扩张,JSP同Servlet一样,在服务器端执行。CSS也称层叠样式表单,多用于定义网页的样式,网页有三个重要的部分:HTML、JS、CSS,分别用于控制网页的结构、行为与样式,为了便于后期的维护和修改,通常使用CSS控制样式,它让网页结构与样式分开。而在页面设计的另一要素——JS(JavaScript),是一种解释性脚本语言,用来向HTML页面添加交互行为,也可以利用它实现结构与行为分离,它还具有跨平台性,多数浏览器支持。2.5业务逻辑处理使用JSP技术开发Web应用程序时,通常选择的开发模型有Model1和Model2。Model1使用JSP+JavaBean技术将页面显示和业务逻辑处理分开,Model2是从Model1的JSP页面代码中提取出部分逻辑处理和流程控制代码,创建成一个角色,称为控制器(Controller),降低组件之间的耦合性。本系统使用的是Model2开发模型(如图27 计算机科学与技术专业毕业设计(论文)2-1),它更加符合MVC架构模式。在Model2中,Servlet实现控制器的角色,JSP实现视图角色,JavaBean实现模型角色。图2-1MVC设计模式Servlet:是一种特殊的Java类,继承于HttpServlet,主要用于响应和处理客户端的请求,属于服务器的一种脚本程序。它在服务器端运行,交互式地浏览和修改数据,也可以动态得生成Web页面,与传统的类似于CGI技术相比,Servlet具有更高的效率,它拥有简单易用,功能强大,可移植性等特点。Servlet的优势也是比较突出的,它可以和其他资源交互,生成返回给客户端的响应内容,使用Servlet,服务器还可以完全授权对本地资源的访问,它还可以控制外部用户的访问等优势。JavaBean:是用Java语言描述的软件组件模型,其本质是一个类,这些类遵循接口格式,便于使函数命名、底层行为以及继承或实现行为,可以把类看作是标准的JavaBean组件进行应用与构造。JavaBean一般分为可视化组件和非可视化组件两种。现在,JavaBean更多地应用于非可视化领域,同时,它在服务器端的应用也表现出强大的优势。非可视化的JavaBean可以很好地控制逻辑、实现业务逻辑和显示页面的分离,现在更多得运用于后台处理,使得系统具有更好的健壮性和灵活性。这种模式成为当前开发Web应用的主流模式[[]FanXincan.Webcachingsystemresearchandimplementationofcluster[C].Proceedingsofthe2011InternationalConferenceonElectronicandMechanicalEngineeringandInformationTechnology(EMEIT).2011.02:696-699]。3需求分析3.1可行性分析社会需求方面,电子商务活动已经为大多数人所了解和接受了,相应地,电子商务平台——电子商城系统需求是客观存在且非常复杂的,电子商务带动着社会经济的流动,也影响着人们生活的便捷性。技术可行性方面,本系统在设计时,使用的是主流的B/S架构,选用较成熟的MVC开发模式,使用JSP语言进行设计网页的动态的效果,以MyEclipse作为前台网页开发的辅助工具,开源而稳定的MySQL进行数据管理,这款软件是目前众多企业认可的27 计算机科学与技术专业毕业设计(论文)系统数据库开发软件。因此,电子商城系统的开发设计过程中所需要使用的各种技术工具都相对完备,具有明显的技术可行性[[]王丞.基于B/S结构的综合实验教学管理系统的分析与设计[D].云南大学.2010]。3.2业务需求及处理流程电子商城系统是以B2C模式开发与设计的,根据B2C系统的特点,从不同的角色角度进行分析,对每个角色所需的功能进行分析。系统的数据流程图如图3-1所示。图3-1系统数据流程图本系统用户角色分为游客、会员和管理员三类,在这个系统中,游客只有查看商品信息的权限,当用户想购买某款商品时,需要首先登录,通过了密码的验证之后,才有权限购买自己想要商品,将商品加入购物车,进行购买等操作;而管理员这个角色是操作网站后台的,首先需要登录后台,通过验证后才能对后台的分类、商品、订单进行管理操作,其中包括商品的增删改查等功能,对商品进行选择性分类,对于订单可以查询订单情况,及对订单的发货和取消功能。3.3功能和数据需求本系统为最普遍的电子商务企业对客户模式(B2C),主要包含会员的注册、登录、购物车、订单管理、商品查询、支付等基本功能。另外,本电子商城系统还将实现在线管理商品销售的后台系统,主要功能是实现商品的添加、编辑及订单处理等。电子商城系统可分为前台模块和后台模块两部分。前台相关功能模块如图3-2-1所示,各功能模块具体功能见表3-1-1。后台相关功能模块如图3-2-2所示,各功能模块具体功能见表3-1-2。27 计算机科学与技术专业毕业设计(论文)前台功能浏览商品选购商品会员注册会员登录加入购物车生成订单查看购物车信息修改购物车信息添加购物车信息删除购物车信息修改订单确认订单图3-2-1前台功能模块图表3-1-1前台各模块主要功能模块功能数据用户管理注册用户名、密码、Email、验证码登录用户名、密码、验证码修改密码原密码、新密码、验证码商品显示模块商品列表名称、大图、小图、品牌、定价、当前价、折扣、分类商品详细购物车模块添加购物车小图、商品标题、单价、数量、小计、总计我的购物车修改购物车删除购物车订单模块生成订单订单号、订单时间、用户编号、用户信息订单支付订单号、订单时间、商品名称我的订单订单号、订单时间、商品名称、订单状态后台管理商品管理分类管理订单管理搜索商品信息添加商品信息修改商品信息删除商品信息查看订单信息修改订单信息删除订单信息查看分类信息增加分类信息修改分类信息删除分类信息图3-2-2后台功能模块图27 计算机科学与技术专业毕业设计(论文)表3-1-2后台各模块主要功能模块功能数据分类管理模块分类列表分类名称、描述、操作添加分类分类名称、分类描述修改分类删除分类商品管理模块添加商品商品名称、大图、小图、当前价、定价、折扣、品牌、分类搜索商品商品名、品牌商品详细商品名、商品编号、当前价、定价、折扣、品牌、大图订单管理查看订单订单编号、订单状态、金额修改订单删除订单3.4其它需求在系统的开发中,非功能性需求也是不容轻视的,首先,考虑的是界面的友好性,电子商城系统的前台界面应该是结构清晰、简洁明了,最好能提供导航功能,可以让用户快速得查找所需的内容。另一方面,在保证界面简洁的基础上,也要讲究界面的整体美观,彰显出以用户为本的理念,从而吸引更多的用户。其次要考虑系统的安全性,在电子商城系统的服务器上应该安装防火墙和杀毒软件,服务器仅仅对管理员提供权限使用,数据库设计要合理,设置不同的用户权限,尽量复杂的密码,还要每天对数据库进行备份。最后,也要考虑电子商城的运行需求,电子商城系统能够提供多用户同时访问,且保持较快的浏览速度,同时保证系统的运行稳定。4系统设计及实现4.1数据库设计数据库设计是在一个特定的应用环境中,以最好的数据库模式,搭建数据库和应用系统,它可以有效存储数据,满足不同用户的需求。4.4.1主要业务概念建模与E-R图系统的逻辑设计就是将E-R(实体-联系)图转化为关系模型的过程,而常见的关系可分为三种类型:一对一(1:1)、一对多(1:N)、多对多(N:M)。而本系统使用更多的是一对多或多对多的关系。对于“商品分类”和“商品”两者之间的关系,就可以根据一对多的联系转换成关系模式。27 计算机科学与技术专业毕业设计(论文)商品分类(分类ID,分类号,分类名称,分类描述,分类排序号)商品(商品ID,分类号,商品名称,品牌,定价,当前价,折扣,大图,小图,排序编号)对于“商品”和“用户”两者之间的关系,就可以根据多对多的联系转换成关系模式。商品(商品ID,分类号,商品名称,品牌,定价,当前价,折扣,大图,小图,排序编号)用户(用户ID,用户名,密码,邮箱,状态,激活码)整个系统的业务逻辑,可以建立整体E-R图,如图4-1-1所示:图4-1-1整体E-R图各部分实体图的E-R图如图4-1-2所示。27 计算机科学与技术专业毕业设计(论文)图4-1-2各部分实体E-R图4.4.2逻辑数据库设计数据库表的设计主要是把之前的概念架构设计时整理好的基本E-R(实体-联系)图转化为选用数据库管理系统(DBMS)产品所支持的数据模型符合的逻辑结构。它包括了数据项、记录、记录间联系、一致性约束和安全性等。表4-1会员表t_user列名列类型描述uidchar(32)主键loginnamevarchar(50)会员登录名loginpassvarchar(50)会员登录密码emailvarchar(50)邮箱地址statusboolean是否已激活activation_Cchar(64)激活码表4-2分类表t_category列名列类型描述cidchar(32)主键27 计算机科学与技术专业毕业设计(论文)cnamevarchar(50)商品分类名称pidchar(32)外键,相对本表的cid,表示父分类id。descvarchar(100)分类描述orderByint分类序号,用来排序。表4-3商品表t_goods列名列类型描述bidchar(32)主键bnamevarchar(200)商品名称authorvarchar(50)商品品牌(作者)pricedecimal(8,2)定价currPricedecimal(8,2)当前价discountdecimal(3,1)折扣cidchar(32)所属分类idimage_wvarchar(300)大图路径image_bvarchar(300)小图路径orderByint序号表4-4购物车表t_cartitem列名列类型描述cartItemIdchar(32)主键quantityint数量bidchar(32)商品iduidchar(32)当前会员idorderByint序号表4-5订单表t_order列名列类型描述oidchar(32)主键ordertimechar(19)下单时间totaldecimal(10,2)合计金额statusint订单状态:1未付款、2未发货、3未收货、4交易成功、5已取消27 计算机科学与技术专业毕业设计(论文)addressvarchar(1000)收货地址uidchar(32)当前会员id表4-6订单项表t_orderitem列名列类型描述orderItemIdchar(32)主键quantityint数量subtotaldecimal(8,2)金额小计bidchar(32)商品idbnamevarchar(200)商品名称currPricedecimal(8,2)当前价image_bvarchar(300)小图路径oidchar(32)所属订单id表4-7管理员表t_admin列名列类型描述adminIdchar(32)主键adminnamevarchar(50)管理员登录名adminpwdvarchar(50)管理员密码4.2界面设计与实现首页模块主要采用内嵌框架技术分成3个部分。位置分别是上、左、中。前台首页界面如图4-2-1所示。图4-2-1前台首页用户在登录之前,需要进行注册账号,在首页中点击“注册商城会员”超链接进入注册页面,完成注册。相关界面如图4-2-2和图4-2-3所示。27 计算机科学与技术专业毕业设计(论文)图4-2-2用户注册图4-2-3用户登录在首页中,点击某个商品的二级分类,将会显示该二级分类下的所有产品的列表。且该列表是按照分页显示的,每页的数量为12个。商品展示如图4-2-4所示。图4-2-4商品展示点击某个商品的图片或标题,将会进入商品的详细介绍页,如图4-2-5所示。图4-2-5商品详细在商品的详细页面,添加商品的数量,点击购买按钮,将跳转到我的购物车列表,如图4-2-6所示。27 计算机科学与技术专业毕业设计(论文)图4-2-6购物车在电子商城的首页,点击菜单栏中的“我的订单”,将将会到达订单的所有列表页面,这个页面将显示用户所有的订单,这个页面也使用了分页显示的功能,如图4-2-7所示。图4-2-7订单列表在订单列表中点击“支付”或者在订单列表中点击“支付”都可以跳转到支付的页面。在这个页面中,用户可以选择银行,点击下一步,将会跳转到银行的付款界面,这里使用的第三方的支付接口,由于用于测试,因此支付金额给设置了限制,为0.01元,如图4-2-8所示。图4-2-8支付界面管理员登录到后台后,进入该主页,后台的主页主要是分为两个部分,上下两个界面。点击主页菜单栏中的“分类管理”,将到达分类列表的界面,如图4-2-9所示。图4-2-9后台分类管理4.3用户相关功能模块设计与实现27 计算机科学与技术专业毕业设计(论文)本系统用户模块分为用户注册功能和用户登录功能。(1)用户注册功能创建用户注册的界面regist.jsp,同时创建js文件,对注册界面数据的初步校验及设置注册按钮的特效,当用户界面所填写的数据通过了js的校验后,数据将发送给UserServlet.Java的regist()方法进行处理,当UserServlet获得注册界面的表单数据后,进行数据封装,再次进行校验,如果发生错误,将会将错误信息发送给regist.jsp进行显示,如果通过校验,将使用UserService.Java进行业务处理,UserService将数据交给UserDao.Java进行处理,而UserDao完成数据的操作,最后将UserServlet保存处理的结果,并转发到msg.jsp显示成功注册的信息,如图4-3-1所示。图4-3-1用户注册原理图(2)用户登录功能创建用户登录界面login.jsp,然后对登录页面的数据进行校验,通过校验后,表单数据传递给Servlet的方法,Servlet对数据进行封装,然后再次进行校验表单中的数据,通过后,将登录的工作交给Service,返回user对象,如果user对象存在,再判断用户是否是激活状态,如果是,将当前用户保存到session和cookie中,如果不是,将提醒用户去激活自己的账户,如果用户的帐号不存在,将提示登录失败,返回到首页,如图4-3-2所示。图4-3-2用户登录原理图4.4商品相关功能模块设计与实现对于商品功能模块,首先创建相关的类与Servlet文件,在Servlet中创建用分类查询,按品牌查询,按商品名模糊查询,多条件组合查询的方法,同时在Service和Dao层分别都创建相关的处理方法,当页面请求Servlet,给Servlet传递条件,然后Servlet将条件传输给Service,Service请求Dao进行数据的处理,最后将请求来的结果转发给list.jsp27 计算机科学与技术专业毕业设计(论文),显示通过该条件查询到的所有商品。在商品的显示界面,本系统又使用了分页处理类进行处理请求来的结果,将多个商品进行分页显示,通过页面处理的类,可以控制每页显示的商品条目和形成翻页的导航栏,更加方便得提高了用户的使用体验效果,如图4-4所示。图4-4商品展示原理图4.5购物车模块设计与实现用户通过商品的订单页面desc.jsp,点击立即购买,将调用CartItemServlet的add()方法,从表单中获取数量,同时获取商品的id,同时从session中获取user,创建一个CartItem对象,提交给CartItemService#add()方法进行查询当前商品是否存在,如果存在,将用户购买的数量等数据信息提交给数据层Dao进行数据处理,最后使用CartItemServlet完成添加,跳转至我的购物车的列表页,显示所有的购物车条目,如图4-5所示。图4-5购物车原理图4.6订单模块设计与实现在订单模块中,主要拥有的功能是,生成订单,我的订单(它也是支持分页显示效果),查看订单的详细信息,取消订单,确认收货,准备支付以及订单支付,银行的回馈等功能,通过银行的回馈信息,将改变用户订单的状态为“已支付”。用户通过购物车的的信息提交生成订单,该订单将由OrderServlet#createOrder()的方法,创建Order对象,同时创建多个OrderItem对象赋值给Order,然后获取所有的CartItem进行遍历,对应每个CartItem生成一个OrderItem,调用Service完成添加,保存order对象,将它发送给ordersucc.jsp页面,如图4-6所示。图4-6订单原理图27 计算机科学与技术专业毕业设计(论文)4.7支付结算模块设计与实现用户通过支付页面,点击支付,将调用OrderServlet的payment()方法,进行处理,payment()方法将准备好的13个参数(表单中提交和自己在配置文件中给出的参数),计算hmac,13个参数值,keyvalue,加密算法,重定向个易宝的网关,给出14个参数,完成与易宝的对接,易宝通过判断提交数据的有效性,再将结果重定向页面,页面将调用OrderServlet#back()方法获取易宝返回的12个参数,通过使用验证算法来进行验证,如果没有通过,将保存错误信息发送给msg.jsp,如果通过了,将修改订单的状态,保存成功信息,转发到msg.jsp,如图4-7所示。图4-7支付结算原理图4.8后台管理模块设计与实现本系统的后台模块主要是分类管理模块、商品管理模块和订单管理模块。(1)分类管理页面的设计当用户登录进入后台管理的首页后,点击top.jsp的分类管理的超链接,将调用AdminCategoryServlet#findAll()方法去请求Service完成业务的处理,Service调用Dao中的findAll()进行数据库中查找所有的分类信息,最终完成分类的查找,保存获取的结果,转发至list.jsp页面显示分类的信息,同时再获取每个分类的id,通过操作中的调用方法,完成对分类数据的操作,如图4-8-1所示。图4-8-1分类管理原理图(2)商品管理模块用户通过后台首页商品管理的超链接,将调AdminBookServlet#findCategoryAll()方法,而Servlet将调用持久层Service去完成业务,Service调用Dao数据层去数据库中获取分类信息,Servlet获得数据后,转发到左侧的left.jsp页面,并显示分类,然后当管理员点击分类的子分类时,将再次调用Servlet的findByCategory()方法,同样调用Service处理相关的业务,Dao从数据库中获取该分类的商品,Servlet27 计算机科学与技术专业毕业设计(论文)将查询的结果保存并发送至list.jsp显示,在商品的显示也是使用了分页显示的方法,当用户点击某件商品,将通过该商品的id调用Servlet进行处理,获得该商品的详细信息,同时保持该商品处于可进行编辑的状态,管理员对商品进行相关的编辑后,将再次调用Servlet进行处理编辑的操作,如图4-8-2所示。图4-8-2商品管理原理图(1)订单管理模块通过导航栏中的订单管理超链接,将调用AdminOrderServlet#findAll()方法调用Service进行业务处理,然后转交至Dao去处理所有的订单数据,进行查询所有的订单信息返回给list.jsp,并显示,然后管理员可以通过list.jsp页面的超链接,使用相似的方法取得不同状态的订单信息,同时,通过操作项的超链接,使用合适的方法,对订单所处的状态进行更新操作,如图4-8-3所示。图4-8-3订单管理原理图5系统测试软件测试是对软件质量做出保证的重要部分,其主要目的是发现并改正系统中存在的错误,最终实现比较完美高质量的软件。由于软件的生命周期难免会产生错误,因此,提高软件的质量,对系统进行软件测试是有必要的。5.1测试目标27 计算机科学与技术专业毕业设计(论文)对电子商城系统进行全面的测试,修改系统中存在的不足与错误,确保最终的系统是客户所满意的系统。对系统要进行分模块测试,测试各模块的功能和性能是否满足要求,也要找出模块中可能存在问题的地方,并加以改正。最后还要对各模块进行综合测试,确保系统的整体性能。5.2测试方法(1)从程序内部结构和实现角度可划分为:白盒测试和黑盒测试;(2)从程序的执行的角度可划分为:动态测试和静态测试;(3)从程序开发的过程角度可划分为:单元测试、集成测试、确认测试、系统测试、验收测试;5.3测试用例软件的测试用例其目的是发现软件不完善的地方,进行相应的修改。其功能模块主要是针对系统的各个模块进行测试,其中包括用户登录模块,商品模块、购物车模块、导航栏模块、订单模块、商品管理模块,对系统的模块预测测试内容如表5-1所示。表5-1系统测试内容模块名称子模块功能测试用户登录会员注册测试会员登录测试前台功能测试商品模块商品显示查找商品商品查看购物车模块添加商品删除商品修改商品数量订单模块查看订单提交订单导航栏模块我的购物车我的订单修改密码退出后台功能测试商品管理商品搜索27 计算机科学与技术专业毕业设计(论文)添加商品查看、删除、修改商品分类管理查看分类添加分类删除、编辑分类订单管理查看订单处理订单搜索订单5.4测试结果(1)用户登录模块测试:表5-4-1用户登录,表5-4-2会员注册。表5-4-1用户登录用户名密码预测结果实际结果Lisi123登录成功登录成功Abc123用户名不存在用户名不存在Lisi111密码错误密码错误Lisi123登录成功登录成功表5-4-2会员注册用户名密码确认密码邮箱预测结果实际结果Huang1231231104725109@qq.com注册成功注册成功Lisi12312318356@qq.com用户名已存在用户名已存在Huang1231111104725109@qq.com两次密码不一致两次密码不一致Huang12312318356@qq.com您的邮箱已注册您的邮箱已注册Huang1231231104725109@qq.com注册成功注册成功(2)商品模块测试,主要包括以下测试内容。商品显示:预计点击分类,显示该分类商品列表信息,实际操作,点击分类显示商品列表,包含商品:标题、小图、定价、折扣、现价、品牌。27 计算机科学与技术专业毕业设计(论文)查找商品:预计输入商品标题关键词,查找相关商品,实际输入关键词,确实查找到相关商品;预计高级搜索输入商品名称或品牌,查找到相关商品,实际输入,查找到相关商品。商品查看:预计点击某款商品图片或标题显示该商品的详细信息,实际点击,该商品详细信息显示成功。(1)购物车模块测试,主要包括以下测试内容。添加商品:预计点击某款商品,添加进购物车条目,实际操作,点击商品,确实添加一条商品记录;预计加入购物车,实际加入购物车,测试结果,跳转至我的购物车,并显示刚才所添加商品的记录。修改商品:预计减少某件商品的数目,实际更改商品数量,测试的结果,显示剩余商品数量,并修改了商品的小计和总计。修改商品:预计点击删除某款商品或批量删除商品,实际操作,测试结果,删除了某款商品,并修改了商品的小计和总计。(2)导航栏测试,测试内容如下。我的购物车:预计点击导航栏“我的购物车”,实际操作测试结果,跳转至我的购物车界面,显示所有购物车内容。我的订单:预计点击导航栏“我的订单”,实际操作,测试结果,跳转至“我的订单”,显示当前帐户订单的记录。修改密码:预计输入正确的原密码和新密码,实际操作输入正确的数据,测试结果,显示修改成功,并跳转至登录界面,实际操作输入错误的数据,测试结果显示修改失败。(3)订单模块测试:预计对订单进行查看和提交,实际操作,测试结果,订单模块对订单操作正常。(4)后台商品管理、分类管理、订单管理:按照预计表中对相关模块进行测试,实际操作结果和预计结果相同。通过对以上功能模块进行测试,其测试结果与预期的结果相同,通过测试与排查这个工程,对系统的一些不足之处进行发掘,并给予纠正,从而保证系统能正常稳定得运行。27 计算机科学与技术专业毕业设计(论文)结束语通过对电子商城系统的设计与实现,我较全面得掌握了Java的编程技巧和一些基本知识,在系统的开发过程中,我的Java开发思维能力得到很大得提高。例如:更深层次得了解了MVC设计模式,SQL语句的使用等。在整个系统的设计与开发中,我学到了一些有用的经验:在完成系统开发前,要做好一份完整的系统分析,它决定着系统的成功与否,我们在着手开发系统之前,不要着急编程,先使用一段时间去分析好这个系统的各个功能模块,及它们直接的联系,做好数据库的设计,写出相应的文档。然后再开始编写系统的代码,这样,我们可以更清晰的了解代码所要表达的中心思想,思路清晰。与此同时,我还觉得,由于平时很少接触这方面的系统开发,在应用上缺乏经验,在设计中走了很多弯路,以后还是需要更多的努力。对于我个人而言,这次的毕业设计所产生的影响还没有随着设计的结束而结束,这次的毕业设计,让我学会了好多没有接触过的知识。在老师的指导和自己的学习下,使我所学的知识得到了很好的巩固和应用,也学会了理性得去思考和解决问题。本系统难免还有些错误或者考虑不周全之处,真诚得欢迎各位师长,同学提出宝贵的意见。27 计算机科学与技术专业毕业设计(论文)参考文献27 计算机科学与技术专业毕业设计(论文)致谢匆匆两个月,论文的写作画上了完整的句号,在这段时间的写作与设计过程中,收获还是比较丰富的,同时也遇到了许多的困难和障碍,但是在老师和同学的帮助下都得到了解决。在这段时间里,我真心得感谢指导老师——李冬老师,他在白忙之中,还要抽取大量的时间,为我解答论文和设计中所遇到的各种困惑。另外,在搜集资料方面,导师也给了我很多支持与建议。不管是大问题还是小问题,导师都是能够给出完美的建议,为我完成论文提供了很大的帮助。在此,要感谢论文中所涉及到的学者,如果没有他们研究成果的帮助和启发,我将很难完成这篇论文。也要感谢我的朋友,在我写作的过程中给我提供了很多论文素材,在撰写和排版中提供热情的帮助。由于我的学术水平有限,所写论文难免会有不足之处,恳请各位老师和学友给出批评和指正。27

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭