版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、在线交易平台设计与实现摘 要随着internet技术的飞速发展,人们的生活和internet的关系越来越密切,如何通过internet抓住商机成为摆在人们面前的一个重要话题。电子商务代表着未来贸易方式的发展方向,其应用和推广将给社会和经济带来极大的效益。因此,一个能够实现在线购物功能的系统的开发就成了当务之急。本购物系统是一个基于internet,采用b2c(business to consumers)模式,并根据现有的网上购物系统的现状而设计开发的电子商务平台。它不但可以扩大商家的规模和市场影响力,而且可以减少企业的经营成本,提高工作效率。为用户提供了会员注册,购物车管理,商品搜索,用户资料
2、修改等功能。本文主要介绍该系统是如何实现,并详细介绍了系统分析、系统设计和数据库设计的一些思路和方法。另外,在系统设计这一章节作者列出了实现在线购物过程的详细流程。该系统凭借web服务器和客户的浏览器,利用电子工具高效率、低成本的特点,为客户提供交易平台、在internet上发布商业信息,使用户可以查阅商品、搜索商品、订购商品,为客户提供全天候的、更好、更快的商务活动空间。关键词 电子商务;在线购物;javawebdesign and implementation of online trading abstractwith the fast development of the intern
3、et technology, the relationship between peoples life and internet is becoming more and more intimate. how to grasp commercial opportunity through the internet is becoming an important topic. the e-commerce represent the developing direction of the future type of trading. its application and populari
4、zation will bring great benefit to the society and economic. so,the development of a system which is able to implement online shopping is becoming an immediate necessity.the system has mainly provided users with the following functions: membership registration、shopping car management、goods search、in
5、formation modify etc. it has also provided managers with goods management、customer information management、news management 、ad management and so on. it has been designed with b/s mode of three-tier structure, jsp technology in dynamic page design. considering from the security and reusing code of the
6、 system, key codes has been secured by javabean technology. mysql database has been used as the background database.the paper mainly introduced this, detailed introduced some thoughts and method of system analysis,system design and database analysis.besides,in the chapter of system design,author lis
7、ted the detailed algorithm of how to implement online shopping.the system rely on web server and clients broswer,making use of the electronic instruments characteristics of high-efficiency and low-cost,providing a trading flat for client,release bussiness information in the internet,enable the user
8、to look up, search,subscribe goods.providing the client with full-time,better,faster space of commercial activity.keywords e-commerce;online shopping;javaweb目 录摘 要iabstractii第1章 绪论11.1 选题目的和意义11.2 国内外文献综述21.3 论文研究内容3第2章 需求分析42.1 引言42.1.1 背景分析42.1.2 术语定义42.2 任务概述52.3 可行性分析52.3.1 社会可行性52.3.2 经济可行性62.3
9、.3 技术可行性62.4 系统功能分析62.5 本章小结6第3章 系统设计73.1 总体结构设计73.2 系统架构设计73.3 设计目标与用例分析103.3.1 设计目标103.3.2 用例分析103.4 模块功能详细设计113.4.1 权限管理模块功能设计113.4.2 商品显示模块功能设计153.4.3 交易模块功能设计183.4.4 搜索模块功能设计213.4.5 商品讨论模块功能设计213.5 数据库数据设计223.5.1 数据库主要实体类图223.5.2 数据主要实体描述243.6本章小结26第4章 系统实现274.1 总体实现274.2 后台逻辑实现284.2.1 持久层实现284
10、.2.2 事务处理284.2.3 业务逻辑层实现294.2.4 控制层实现294.3 主要模块功能实现294.3.1 权限管理模块实现294.3.2 商品显示模块实现304.3.3 交易模块功能实现304.3.4 搜索模块功能实现314.3.5 商品讨论模块功能实现314.3.6 其他功能实现314.4 部分页面展示324.5本章小结35第5章 系统测试365.1 测试用例设计与测试用例的运行过程及测试结果分析365.1.1 模块测试365.1.2 集成测试365.1.3 验收测试375.2 评价375.3本章小结37结论38致谢39参考文献40附录41 第1章 绪论1.1 选题目的和意义随着
11、中国市场经济的日趋成熟和计算机技术和网络技术的发展,人们对信息的获知程度和广度都提出了更高的要求。尤其是近年来,商品的种类变得五花八门,人们在采购货物的时候对商品类别、型号、用途的要求也各不相同,如果采用传统的将各种类别不同型号的商品都配送至每个可能需要该商品的地区,就会增加很多配送方面的成本;同时,买家必须到商店里面去亲自选购所需的商品也是传统购物方式的弊端。因此网上购物这种新的商业运营模式就被越来越多的商家运用到竞争中去,并得到了大多数客户的认可,这种基于浏览器、服务器实现的购物方式已经初具规模,一些在线购物网站的成立,改变了人们以往传统的购物观念。图1-1是根据cnnic(中国互联网络信
12、息中心)公布的中国b2c电子商务发展报告来进一步分析目前的网上购物的现状(主要引用其中的关于进行网络购物原因的分析图表)。 寻找稀有商品出于好奇节省费用操作方便节省时间10.040.030.020.00.0%50.029.732.633.444.246.7图1-1网络购物原因调查图表从图1-1可以看出网上购物选择节约时间和操作方便的分别占46.7%和44.2%,这说明随着生活节奏的加快,人们越来越希望拥有简单快捷的购物方式。因此,一个允许买家在家里就可以浏览商家发布的所有商品信息的在线购物系统将大大减轻商家的工作量、降低投资成本。本系统是结合当前传统购物方式消耗大量人力物力的弊端、以当前市场上
13、已经存在的b2c、c2c等在线购物网站为模型,开发出适合于大部分中小型企业以及个体用户的网上购物系统。该系统是在学习java web相关知识的基础上,熟悉myeclipse开发环境并能熟练使用java编程语言的同时,运用软件工程理论知识,开发出的一套基于java web的在线购物系统。在系统开发的过程中能够应用所学的知识,并促进本人更深入的学习java web的相关特性、积累更多mysql的相关应用知识,这样不仅能将所学的书面知识和实际应用结合起来达到学以致用的目的,同时也为以后的工作和学习积累经验1。 1.2 国内外文献综述在线交易平台即是电子商务中的一个分支,学界普遍认为,电子商务最早产生
14、于60年代,发展于90年代。近30年来,计算机的处理速度越来越快,处理能力越来越强,价格越来越低,应用越来越广泛,这为电子商务的应用提供了基础;由于internet逐渐成为全球通信与交易的媒体,全球上网用户呈级数增长趋势,快捷、安全、低成本的特点为电子商务的发展提供了应用条件;信用卡以其方便、快捷、安全等优点而成为人们消费支付的重要手段,并由此形成了完善的全球性信用卡计算机网络支付与结算系统,使一卡在手,走遍全球成为可能,同时也为电子商务中的网上支付提供的重要的手段;1997年5月31日,由美国visa和mastercard国际组织等联合指定的set(secure electronic tra
15、nsfer protocol)即电子安全交易协议的出台,以及该协议得到大多数厂商的认可和支持,为在开发网络上的电子商务提供了一个关键的安全环境;自1997年欧盟发布了欧洲电子商务协议,美国随后发布全球电子商务纲要以后,电子商务受到世界各国政府的重视,许多国家的政府开始尝试网上采购,这为电子商务的发展提供了有利的支持。电子商务作为一种新型的交易方式,将生产企业、流通企业以及消费者和政府带入了一个网络经济、数字化生存的新天地;在电子商务环境中,人们不再受地域的限制,客户能以非常简捷的方式完成过去较为繁杂的商务活动,如通过网络银行能够全天侯地存取资金帐户、查询信息等,同时使得企业对客户的服务质量可以
16、大大提高;电子商务能够规范事务处理的工作流程,将人工操作和电子信息处理集成为一个不可分割的整体,这样不仅能提高人力和物力的利用,也可以提高系统运行的严密性;在电子商务中,安全性是一个至关重要的核心问题,它要求网络能提供一种端到端的安全解决方案,如加密机制、签名机制、安全管理、存取控制、防火墙、防病毒保护等等,这与传统的商务活动有着很大的不同;商务活动本身是一种协调过程,它需要客户与公司内部、生产商、批发商、零售商间的协调,在电子商务环境中,它更要求银行、配送中心、通讯部门、技术服务等多个部门的通力协作,往往电子商务的全过程是一气呵成的。关于电子商务方面,我参考查阅了国际电子商务概论、电子商务营
17、销案例、网上开店行销指南、电子商务导论、电子商务万事通、电子商务基础、电子商务教程、电子商务原理、中国电子商务发展研究报告等电子书籍、文献,还查看了电子商务直通车网和电子商务研究网,这些的内容涵盖了电子商务的产生、发展、概念、性质、目标和任务、作用、地位、特点、功能并提供了许多相关电子商务的案例。让我了解到了近现代电子商务理论和实践的基本内容和发展状况,深刻认识到电子商务的重要性,为论文的写作奠定了理论基础。1.3 论文研究内容本论文主要研究在线交易平台如何设计并使用javaweb实现。现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节,这样才能使得在电子交易时避
18、免不必要错误发生。本系统将使用html、jsp等技术来编辑网页,并运用hibernate把数据库和动态网页相关联。传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。当数据量比较大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。本设计在实际应用中的解决方案是建立网站,以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解商品买卖的情况。第2章 需求分析2.1 引言本系统使用struts2+hibernate3+ajax+j2ee技术完成的一个网上在线购物系统,模仿新豆网()制作完成,该项目主要
19、完成在线购物平台的设计与实现。2.1.1 背景分析电子商务的出现,是网络经济对我们现存经济社会的体制挑战,尤其是对企业传统的宣传、经营模式和理念将会造成强烈的冲击。企业运营模式的各种问题都一个个的滋生出来,给企业带来了经营上的各种匮乏,乃至企业覆灭的沉重代价;如果企业能有效解决这些问题,在网络构建全球市场竞争的平台上,企业的优势则会无限地放大,使企业从降低成本、有效商业信息、高效商业决策和加快产品流通等方面都会得到长足的发展。真正的电子商务解决方案应是基于客户网下现有的资源,为客户建立一整套的网上商业模式。而建立网站只是用技术的手段使已定的商业模式在网上得以实现。面对对网站开发拥有不同知识层面
20、的客户,项目的负责人对用户需求的理解程度在很大程度上决定了此类平台实现的成败。因此如何更好地的了解、分析、明确用户需求,并且能够准确、清晰以文档的形式表达给参与项目开发的每个成员,保证开发过程按照满足用户需求为目的正确项目开发方向进行,是每个网站开发项目管理者需要面对的问题,也是需求分析的目的所在。2.1.2 术语定义1. java是由sun microsystems公司于1995年5月推出的一种程序设计语言和该语言平台的总称2。2. 面向对象是程序设计中采用封装、继承、抽象、多态等设计方法3。3. servlet是一种服务器端的java应用程序,具有独立于平台和协议的特性,可以生成动态的we
21、b页面。4. jsp是java server pages的简写,是由sun microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。5. ajax是asynchronous javascript and xml的简写,异步javascript和xml,ajax并非缩写词,而是由jesse james gaiiett创造的名词,是指一种创建交互式网页应用的网页开发技术5。6. struts最早是作为apache jakarta项目的组成部分,是目前非常流行的一种动态web开源框架技术6。7. hibernate是一个开放源代码的对象关系映射框架,使得java程序员可以随心所
22、欲的使用对象编程思维来操纵数据库。8. browser/server,浏览器/服务器,简称b/s。 9. client/server,客户端/服务器,简称c/s。 10.business to business(b2b)商家对商家,电子商务的一种业务形式。 11.business to consumer(b2c)商家对顾客,电子商务的一种业务形式。 12.consumer to consumer(c2c)顾客对顾客,电子商务的一种业务形式。 2.2 任务概述任务目标:实现在线交易网站,可以使用户方便,轻松的进行购物(买家)、讨论、评价等和发布自己的商品(网站使用者)、信息、公告等。用户特点:买
23、家特点:买家都喜欢便宜,关心商品的质量,怕买到的是假货、次货,但是网络购物只能看图片,看评论,看说明,看买过的人评价。这方面要给买家提供详细的信息。图片有大中小缩略图、商品各种评价、打分、讨论、排行等,给买家一个最好的用户体验。卖家特点(站长):及时的宣传自己新商品,热卖商品等,让用户知道自己的商品,对于某些商品尽快脱销,需要促销活动等,都需要使买家尽快知道这些消息等。这方面要给卖家(站长)提供大量新闻,广告信息(宣传自己商品),在首页使用公告,排行等方式醒目的显示给买家。2.3 可行性分析可行性分析主要包括社会可行性、经济可行性、技术可行性。2.3.1 社会可行性首先从当前社会商业市场运作情
24、况来看,商业企业在运营的过程中,经常会受到以下一些条件的限制:1. 产品的宣传受到限制,采购商或顾客只能通过上门咨询、电话沟通等方式进行各种信息的获取,受到一定的时间与物理空间的局限并且成本较高,庞大的商业经济周转。2. 复杂的产品周转渠道:从看样品、谈价格到支付货款等一系列的产品周转渠道过于复杂,企业与客户之间缺乏一个全面的沟通与快捷运营的平台系统;商业企业中根据季节的变化,热销商品在销售高峰到来时货源紧张,企业需要实时了解商品的销售情况,保证热销商品的要货满足率。基于商家在传统销售模式中遇到的以上困难,作者拟开发在线购物系统。商家在使用该系统后,只需将需要推广的产品信息录入数据库,即可达到
25、向购买者推销的目的,节省了大量的人力资源。同时可以根据在线购物的多少、实时查看库存信息,实现商品周转渠道的最简洁化。因此,在社会方面,本系统的开发是可行的。2.3.2 经济可行性由于使用开源框架开发本系统,且在windows操作系统下完成本系统的开发,所以开发成本仅为作者的时间,并未投入其他物质成本。且在传统的销售模式中,企业要投入大量的人力物力用于商品的配送,并且还不能有效做到合理的供货。而本系统为商家提供了随时随地查看所有商品信息的功能,是商家在短时间内充分了解当前市场货物的供需情况,从而制定合理的配送计划,达到配送成本最小化、供货效率最大化。这样就能为企业节约大量的人力资源投入,本系统的
26、未来前景美好。所以在经济方面,该系统的开发是可行的。2.3.3 技术可行性struts2、hibernate3、ajax、jsp等技术比较成熟,常见功能可以轻易实现,且对windows系统有良好的支持,开发环境容易搭建,后期部署方便;该系统开发完成后在1024*768的浏览器下能够达到最佳的浏览效果,在其他分辨率下亦不影响系统的正常功能;另外需要浏览该系统的计算机联入internet,而这些方面在当前条件下是完全能够实现的,所以在技术方面,该系统的技术是可行的。2.4 系统功能分析商家具有通过本系统发布商品、发布公告、了解商品销售情况、销售趋势,与买家互动等功能。满足卖家快速及时的出售自己商品
27、的需求。买家具有注册、方便的浏览、查询、购买、讨论和评价商品等功能。满足买家购买到自己喜欢合适的商品需求。根据在线购物的逻辑过程,同时参考、分析目前市场上已有的在线购物网站,本系统的主要功能需求分为权限管理、商品展示、交易、商品搜索和商品讨论五大模块。各个功能均参考当前互联网主流门口网站实现的功能。1. 权限管理模块包含登录、登出、查看用户信息、以及增删查改的功能;2. 商品显示模块包含商品的分类查看、查询、订购功能;3. 交易模块包含购物车中商品的添加、删除,修改,订单生成等功能;4. 商品搜索模块包含根据商品名称、分类、品牌搜索详细商品信息功能;5. 商品讨论模块模拟论坛实现的,包含商品讨
28、论,打分,关注等功能。2.5 本章小结本章主要介绍了背景分析、术语定义、可行性分析与功能分析,从需求上确定了系统开发的主要功能模块,从技术上确定了系统需要用到的编程语言和开发环境等,为后续设计与实现奠定基础。第3章 系统设计本章的总体目标是将上一章需求分析阶段得到的功能需求转换为详细的业务逻辑模型,具体将从系统的结构设计和数据库设计两方面进行设计,即根据上一章节中需求分析的”做什么”,确定系统应该”怎么做”。3.1 总体结构设计系统结构和功能是系统设计的核心部分,通过系统结构图可以清楚的看出整个系统的结构。针对每个结构模块分别做分析,为以后的设计和实现打下基础。根据功能需求,根据在线购物的逻辑
29、过程,同时参考、分析目前市场上已有的在线购物网站,本系统的主要功能需求分为权限管理、商品展示、交易、商品搜索和商品讨论五大模块。本系统开发的软件模式选择的是快速原型模式,因为本系统模拟新豆网实现(主要模拟其业务流程),所以其原型选择新豆网,大体功能(如商品交易,查询等)即按其实现,对于当前新豆网不尽人意的地方,模拟当前互联网其他网站主流实现方法实现。总体功能结构图如图3-1所示。3.2 系统架构设计 本系统采用4层架构的方式进行设计与实现,主要包括:表现层、控制层、业务层、持久层7,如图3-2所示。表现层:主要负责用户交互和结果显示,交易系统和管理系统有不同的 url 入口界面。该层业务展示主
30、要使用jsp语言,为了加强用户体验度,使用javascript和ajax异步与服务器交互,使用户“无等待”交互。该层的美工布局使用div+css方式,使界面美观舒适,便于观看与操作。控制层:主要负责系统的访问控制、数据处理和注销,是系统的核心控制单元。控制层通过系统描述来组织工作。 该层主要使用struts2的过滤器作为核心控制器,控制请求跳转与结果页面渲染,有些功能使用拦截器实现,这种注入的方式方便扩展,加强了代码的重用性,如权限判断等的。业务层:实现了交易系统和管理系统的主要业务逻辑,是系统主要的运算单元。 该层主要使用service业务组件实现,即无状态javabean,向后台servi
31、ce调用持久层的dao方法操作数据库,向前台service提供接口供struts2的action调用。持久层:实现了静态数据和数据库数据的持久化管理,为业务层提供数据服务,是系统进行数据操作的统一界面。 该层使用hibernate管理javabean,使用面向对象的方法操作数据库,为后期维护与扩展提供方便11。全局:使用log4j记录日志,xml文件作为配置文件,使用javamail处理所有邮件信息(由于没有邮件服务器,该处模拟操作)。在线购物商品浏览分类浏览权限管理注册验证邮箱找回密码详细浏览排行浏览名称搜索类别搜索登录/登出品牌搜索搜索模块排行搜索发帖/回复/留言个人信息修改商品打分/讨论
32、订单生成/修改讨论模块交易模块付款/确认收货购物车功能修改商品数量清空购物车查看购物车图3-1 总体功能结构图注册用户视图层控制层业务层持久层系统描述数据源监听过滤web容器业务控制数据持久层商品浏览交易管理搜索模块权限管理表现层讨论模块图3-2 概要功能架构图具体每层使用到的技术如图3-3所示,ajax使浏览器与服务器交互,并传递数据,所以ajax同属于显示层与控制层。由于显示层使用到了struts的显示标签,所以struts同属于显示层与控制层。持久层虽然大部分使用hibernate操作,但小部分功能使用jdbc灵活方便,所以部分持久层使用jdbc实现,其数据库连接使用数据库连接池,由jd
33、k提供的线程池实现。图3-3 技术架构图3.3 设计目标与用例分析3.3.1 设计目标本系统在设计时应该满足以下几个目标:1. 采用人机对话的操作方式,界面设计美观友好。2. 信息查询灵活、方便、快捷、准确、数据存储安全可靠。3. 全面展示商城内所有商品,并可展示最新商品及特价商品。4. 用户可选择多个商品进行比较。5. 会员可以随时修改自己的会员资料。6. 实现网上购物。7. 各种商品排行,方便顾客了解本商城内的商品信息及帮助企业领导者做出相应的决策。8. 查看商城内的公告信息。9. 用户随时都可以查看自己的订单。10. 对用户输入的数据进行严格的数据检验,尽可能排除人为的错误。11. 系统
34、最大限度地实现了易维护性和易操作性。12. 系统运行稳定、安全可靠。13. 各处交易安全,不泄露用户资料。3.3.2 用例分析未登录或登录但未通过验证的用户具有登录、注册、浏览新闻公告、浏览论坛帖子、查看各种商品排行,浏览商品和商品详细信息、搜索商品等功能,用例图如图3-4所示。图3-4 未登录或登录用户用例图已登录并通过验证的用户具有除注册外其他所有非登录用户的功能,并额外具有论坛发帖、查看个人信息、个人资料修改、站内发信、操作购物车、查看订单、修改订单、安全登出、商品打分等功能,用例图如图3-5所示。图3-5 登录用户用例图管理员具有普通会员的所有功能,且额外具有新闻管理,广告管理,商品管
35、理,会员管理等功能,用例图如图3-6所示。图3-6 管理员用例图3.4 模块功能详细设计本系统分销售模块和系统管理模块,每个模块又有若干个子模块构成,其中销售模块主要包括:商品展台、购物车、会员管理、新闻管理、注销登录等子模块。系统管理模块主要包括:商品管理、订单管理、会员管理、新闻管理、注销登录等子模块。具体的模块功能设计如下。3.4.1 权限管理模块功能设计用户权限功能用例图如图3-7所示图3-7 权限模块用例图主要用例说明:用例名称:验证邮箱用例描述:没有通过验证的用户输入验证码,激活邮箱验证。前置条件:用户登录且未通过验证或用户注册后未验证。后置条件:用户通过邮箱验证并加大权限。基本事
36、件流:1. 用户登录注册邮箱,取得验证码。2. 用户处于验证页面,填入验证码,点击提交。3. 验证码不正确,返回2;验证码正确,执行后置条件。其他事件流:无。异常事件流:跳转到错误页显示页面,提示错误信息。注释:无。主要功能详细设计说明:1. 注册功能:提供浏览者注册功能,注册之后可以在网站选购商品到购物车,否则只能浏览商品信息而无法下达订单。页面使用ajax技术,动态判断用户名是否已被占用,密码,邮箱等是否符合格式等,友好的提示用户,防止用户提交信息失败从而重新填写大量的信息。注册结束后在数据库中存储注册信息,以加密的方式存储,使用不可逆加密md5信息摘要与base64技术。用户注册序列图如
37、图3-8所示。2. 注册认证:激活会员邮箱,只有激活邮箱的会员才能正常使用会员功能,否则只能等待激活邮箱。注册后,会向会员邮箱发送一个邮件,邮件中含有激活码,该激活码使用uuid生成。激活成功后可以正常使用会员功能。3. 用户登录:针对已注册的用户设置,每个访问者一次只能够登陆一个账户。登录成功后返回到主页面查看商品,失败则重新填写。用户登录序列图如图3-9所示。4. 登出:注册用户单击“注销”后实现安全退出。点击注销后清空session,清空cookie,返回到登录页面。18:action对象14:发送验证码7:返回处理信息24:响应请求16:页面请求22:返回结果21:createuser
38、20:生成user对象19:处理方法:register17:获取对象15:显示验证码13:生成验证码10:获取对象12:处理方法:execute11:action对象9:页面请求8:响应请求6:返回结果5:判断是否存在4:处理方法:validateusername3:action对象2:获取对象1:页面请求:browser:actionservletstruts.xml:authorizeservice:userdao23:返回结果图3-8 用户注册序列图8:返回处理信息7:存储用户id到session中9:响应请求6:返回结果5:验证用户4:处理方法:login3:action对象2:获取对
39、象1:页面请求:browser:actionservletstruts.xml:authorizeservice:userdao图3-9 用户登录序列图6. 找回密码:当已注册用户忘记密码时可根据用户名和验证邮箱找回密码,也可以通过密码提示问题和答案找回密码,不论何种方式找回密码,只能以重设新密码的方式重置密码,无法获得旧密码,因为为了安全性考虑,加密方式使用了md5信息摘要这种不可逆的技术。7. 权限判断功能:根据是否登录和是否通过验证邮箱判断用户权限,根据权限进行操作,如果权限不够,则跳转到对应页面。该功能使用struts2拦截器实现,在需要限定权限的功能前注入拦截器,如果权限足够则通过,
40、不足则返回到登录界面,如果用户登录后权限仍然不足,则返回到验证邮箱页面。权限判断详细活动图如图3-10所示。图3-10 权限判断活动图3.4.2 商品显示模块功能设计商品显示模块功能及用例图如图3-11所示,详细功能说明如下:1. 商品浏览:网站的首页显示出部分特价商品、新上架商品、促销商品、店长推荐商品、关注商品榜、网站公告等,同时列出了网站发布的所有商品类别导航树。存储使用request属性范围,所有信息以集合的方式存储在request中。当用户浏览1级分类时,使用树形菜单形式显示2级分类和3级分类。图3-11 商品显示模块用例图2. 商品详细信息:根据商品的id,查询数据库,将商品的所有
41、信息查询并显示给用户,具体交序列如图3-12所示。8:返回处理信息7:将信息存储到request中9:响应请求6:返回商品全部信息5:调用方法findproductbyid4:处理方法:getproduct3:action对象2:获取对象1:页面请求:browser:actionservletstruts.xml:categoryservice:categorydao图3-12 商品明细序列图3. 商品分类显示:根据商品的三级类别,显示商品的概要信息,有分页及排序功能,排序可按照名称,价格,上架时间,人气等。分类显示序列图如图3-13所示。8:返回处理信息7:将集合存储到request中9:响
42、应请求6:返回商品集合list5:调用方法findproductbycategory4:处理方法:getproduct3:action对象2:获取对象1:页面请求:browser:actionservletstruts.xml:categoryservice:categorydao图3-13 分类显示序列图4. 根据商品订购信息展示销售排行榜:根据购买者下订单的情况,展示出当前网站中最畅销的商品信息。首页中显示出各种商品的排行榜,以list集合的方式存储在request中。5. 新品上架:根据数据库信息显示出最近一周内上架的商品信息。首页中显示出各种新商品的排行榜,以list集合的方式存储在r
43、equest中。查询时查询一周内出现的新商品。6. 动态首页:根据时间的不同,网站首页将放置反映不同季节或不同销售目的的图片和广告等。使用javascript,动感的显示一些广告,新闻等。7. 首页显示动态新闻:在购物网站的首页按照时间录入先后顺序显示最近的新闻。在页面左上角,显示近期公告。3.4.3 交易模块功能设计交易模块功能及用例图如图3-14所示说明:图3-14 交易模块用例图主要用例说明:用例名称:操作购物车用例描述:已登录并通过验证的用户通过此用例对自己的购物车进行增删改查操作。前置条件:用户登录并通过验证。后置条件:更新购物车中的数据。基本事件流:1.用户点击购物车按钮,显示原有
44、购物车详单信息。2.用户操作购物车,删除商品,修改购物车内商品数量,确定提交。3.执行后置条件。其他事件流:登录系统并通过验证后,可以浏览商品并点击购买按钮,则商品添加到购物车中并显示购物车详单。异常事件流:跳转到错误页显示页面,提示错误信息。注释:无。用例名称:商品交易用例描述:已登录并通过验证的用户确认购买商品。前置条件:用户登录并通过验证,购物车中有商品。后置条件:系统更新订单信息,提示站长发货。基本事件流:1.用户处于购物车详单页面,点击付款按钮,跳转到订单生成页面。2.用户填入或选择收货地址,填写买家说明,选择付款方式与银行,点击去付款按钮,跳转到模拟付款页面。3.付款结束,跳转到订
45、单详单页面。4.执行后置条件。其他事件流:订单生成与付款页面,用户随时可以点击“返回”按钮,返回到购物车详单页面。异常事件流:跳转到错误页显示页面,提示错误信息。注释:无。详细功能设说明:1. 购物车功能:已登录的会员选中的商品都将暂时存放在购物车中,可通过查看购物车修改购买数量。如果用户登录了,且权限足够,则点击添加到购物车时,使用cookie添加信息,不访问服务器,而只将商品的id存储在cookie中,操作cookie使用javascript实现,具体序列图如图3-15所示。6:更新购物车中商品5:从cookie中获得购物车7:返回处理信息8:响应请求4:处理方法:add/delete/m
46、odify3:action对象2:获取对象1:页面请求:browser:actionservletstruts.xml:cartservice图3-15 修改购物车序列图2. 订单生成功能:根据购物车中的信息,生成订单。生成订单时根据cookie中的id信息,查找数据库得到商品list,根据list计算价钱,生成订单,具体交互图如图3-16所示。6:创建商品集合list5:获取cookie中购物车10:返回处理信息9:清空购物车11:响应请求8:返回生成订单结果7:调用createorder生成订单,存储到数据库4:处理方法:createorder3:action对象2:获取对象1:页面请求:
47、browser:actionservletstruts.xml:cartservice:cartdao图3-16 订单生成交互图3. 付款功能:根据订单,用户信息,付款方式等付款,该处不能连接真正的网上银行,属于模拟操作。4. 用户管理自己的收货地址,用户可以有5个收货地址,使用时可以选择或重新填写。在付款时选择收货地址、付款方式和邮递方式。3.4.4 搜索模块功能设计图3-17 商品搜索模块用例图商品搜索模块包含根据商品名称、分类、品牌搜索详细商品信息功能,具体功能及用例图如图3-17所示。1. 根据输入的商品名称搜索商品,在主页上即有搜索输入框。主页头部使用ajax添加搜索框,以下拉列表框
48、形式展示商品类别,在搜索时根据类别,商品名搜索。始终显示在所有的页面之上。2. 根据选择的商品类别、品牌等,按对应方式搜索商品,同理如上。4. 列表的方式显示出商品的全部类别,品牌等,同理如上。3.4.5 商品讨论模块功能设计图3-18 商品讨论模块用例图商品讨论模块功能及用例图如图3-18所示:1. 给已经成功购买过的商品打分。2. 以论坛的形式讨论商品,热门商品开辟专区。3. 按照用户发帖数量、质量,版主可以给予评分,按照用户积分升级,获得头衔等。由于该系统目的是在线购物,所以商品讨论简要设计并实现,如果做一个论坛(bbs),该工程不小于电子商务,所以避免主次分离,侧重点放到了商品交易部分
49、,而讨论简要设计与实现。3.5 数据库数据设计3.5.1 数据库主要实体类图数据库的表与实体类对应,字段与属性对应,此处涉及的所有与数据库有关的类都属于pojo类,所以没有业务方法,只有get和set方法12。以下列出主要实体类和实体类的主要属性说明。商品关联实体类图如图3-19所示,详细说明如下:0n1111n1n1n1111photoproductpricecolororderscategorybrand1n图3-19 商品关联实体类图product商品实体:商品名,商品类别,商品顶级id,是否推荐,品牌,型号,价格,赠送豆豆,是否促销,抢购价,限购件数,截止时间,质保,备注,上架时间,简
50、介,规格,图片,颜色,市场价格,购买人气,浏览人气,总分,外观分,价格分,性能分。photo图片实体:图片、说明。与商品一对一的关系。price价格实体:市场名、价格。与商品一对一的关系。color颜色实体:颜色名称、图片。每个商品可以有多个颜色的图片,与商品多对一的关系。category分类实体:分类名、父类id、分类说明。每个分类中可以有多个商品,每个商品若属于某三级分类,必属于其父级分类,所以与商品多对多关系。orders订单实体:下单时间,状态,商品总金额,支付方式id,送货方式id,运费,手续费,订单总金额,使用豆豆数,应付金额,收货id,是否需要发票,最佳收货时间,发票抬头,用户留
51、言,物流公司名称,物流单号。一个订单中可以有多个商品,与商品一对多的关系。brand品牌实体:品牌英文名,品牌中文名,品牌大图,品牌小图,品牌介绍。一个商品对应一个品牌,与商品一对一关系。订单关联实体类图如图3-20所示,详细说明如下:0n111111sendwayorderspaywayuserreceiveaddress1图3-20 订单关联实体类图sendway送货方式实体:送货方式,送货描述,基本费用,到货时间。一个订单一种送货方式,与订单一对一关系。payway支付方式实体:支付名称,支付介绍,手续费。一个订单一种支付方式,使用一次付清方式,与订单一对一关系。receiveaddre
52、ss收货地址实体:收货人姓名,所在地区省,市,区,街道地址,邮政编码,电话号码,手机。一个订单对应一个收货地址,一对一关系。user用户实体类:主要属性有用户名,密码,性别,昵称,email,手机,联系电话等。一个用户可以有多个订单,所以与订单一对多关系。用户关联实体类图如图3-21所示,详细说明如下:receiveaddress收货地址实体,一个用户可以拥有多个收货地址,与用户多对一关系。post主题实体:主要属性有主题类型、是否精华帖、执行精华的用户id、是否加亮显示、加亮显示颜色、加亮的用户id、是否置顶、置顶结束日期、置顶版块区、置顶的用户id、版块id、是否投票、已投票的用户等。一个
53、用户可以发表多个主题,与用户多对一关系。transaction交易实体:商品id,颜色id,数量,金额小计,订单id。与用户多对一的关系。message消息实体:发送用户名、接收用户名、标题、内容、是否保存到发件箱、发送时间、消息状态、消息类型。与用户多对一的关系。0n110.n10.n110.nordersusermessagepostreceiveaddress0.ntransaction图3-21 用户关联的实体类图3.5.2 数据主要实体描述以下列出了一些重要的数据表与表中的主要字段。商品表(参见表3-1),商品价格表(参见表3-2),分类表(参加表3-3),订单表(参见表3-4),会
54、员表(参见表3-5),公告表(参见表3-6)。表3-1 product字段描述字段名类型允许为空java类型说明ididintinteger主键,自增1商品名称pnamevarchar(50)string类别3级idcidintinteger外键,多对一类别顶级idpcidintinteger是否推荐recommendbooleanboolean0:否(缺省)1:是品牌idbidintinteger外键,多对一型号ptypevarchar(30)string价格pricedoubledouble赠送豆豆prisentationintinteger缺省:0是否促销promotionbooleanboolean0:否(缺省)1:是表3-2 pri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (投资方案)陶瓷轴承项目可行性研究报告
- 新建大电流贴片电感项目立项申请报告
- 早教班生活自理课程设计
- 文案创作及翻译课程设计
- 2024-2030年新版中国遥控迷你音箱项目可行性研究报告
- 2024-2030年新版中国电动用碳刷架项目可行性研究报告
- 2024-2030年新版中国推土机铲刀项目可行性研究报告
- 2024-2030年撰写:中国金属锻压件行业发展趋势及竞争调研分析报告
- 2024-2030年撰写:中国999纳米钙行业发展趋势及竞争调研分析报告
- 2024-2030年地质钻机公司技术改造及扩产项目可行性研究报告
- 2024年河南省中职对口升学高考语文试题真题(解析版)
- 《食品行业ERP应用》课件
- 西安交通大学《临床流行病学》2023-2024学年第一学期期末试卷
- 2024年中考语文试题分类汇编:基础知识综合(教师版)
- 广告色彩与视觉传达考核试卷
- 2024-2025学年人教版高一上册物理必修一知识清单
- 2023年不动产登记代理人《不动产登记法律制度政策》考前通关必练题库(含答案)
- GB/T 36547-2024电化学储能电站接入电网技术规定
- 品牌合作经营合同
- 期末测试卷(一)2024-2025学年 人教版PEP英语五年级上册(含答案含听力原文无听力音频)
- 2024文旅景区新春潮趣游园会龙腾中国年主题集五福活动策划方案
评论
0/150
提交评论