ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:1.86MB ,
资源ID:5973586      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5973586.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Struts框架的网上书店.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于Struts框架的网上书店.docx

1、基于Struts框架的网上书店 2011 届毕业设计说明书 基于Struts框架的网上书店系 、 部:计算机与信息科学系学生姓名: 指导教师: 职称 副教授专 业:计算机网络技术 班 级:0801 完成时间:2011-5-20 摘 要网上书店是指利用互联网络来实现图书销售业务的一种新型图书零售渠道。网上书店订单处理速度快,服务范围宽,存书量大,读者坐在家里就可以“逛书店”。本文就网上书店的整个开发流程(包括需求分析,系统设计,详细设计,系统测试等)进行了详细的论述,并在架构设计和实现方案上给出了考虑因素和理论依据。系统实现的主要功能包括:前台的用户注册登录、图书信息的查询和浏览、购物车、下订单

2、等,后台的图书管理,用户管理,订单管理等。本系统采用了B/S结构,三层运行模式,同时适用于Intranet/Internet。浏览器为第一层,作为系统的应用界面;应用逻辑服务为第二层;数据链接为第三层,作为系统的数据存取服务。此架构无须安装客户端软件,便于软件的分发和维护升级,适应了众多应用客户端分散环境下的运行和维护需求。关键词:网上书店;Java;Struts2;面向对象ABSTRACTOnline bookstore is using the Internet to achieve a new kind of book sales book retailing channels. Onl

3、ine bookstore order processing speed, wide range of services, volume of books, the reader can sit at home, bookstore.In this article online bookstore throughout the development process (Including requirements analysis, system design, detailed design, system testing, etc.) are discussed in detail, an

4、d in architecture design and implementation of programs on the consideration given and the theoretical basis. System to achieve the main features include: front desk of the user registration log book information query and browsing, shopping cart, orders, etc., the background of the library managemen

5、t, user management, order management. The system uses the B / S structure, three operating modes, both for Intranet / Internet. Browser as the first layer, the application interface as a system; application logic services for the second layer; data link for the third layer, as the systems data acces

6、s services. This architecture is no need to install client software, easy software distribution and maintenance upgrades to adapt to many applications distributed environment, the client operation and maintenance needs.Key words: Online bookstore; Java; Struts2; object-oriented1 系统概述1.1 网上书店的发展Inter

7、net 的迅速发展正以前所未有的深度和广度影响和改善着人类生活的各个方面,越来越多的人开始意识到Internet所蕴含的经济价值的无穷商机,并积极投身于电子商务活动.实际上,电子商务是一些商业行为的电子化,例如网络书城,网上贸易,就网络书城来说,网络书城是目前应用最广,最成功的典范之一,网络书城的崛起对传统的图书流通体系产生了强烈的冲击,有效地缩短了图书流通发行环节,将广大读者,图书,出版者,发行者紧密地结合在一起,大大提高了图书流通率。1.2 网上书店的现状出版物网上销售不仅是传统销售渠道的发展和补充,也是未来图书销售的发展方向目前我国运作和销售较好的大型网上书店,如当当、卓越和旌旗席殊、中

8、国书网网上书店等,这些网上书店各具优势,其中当当网上书店在价格和品种方面的优势是无人能比;卓越网上书店创造流行的能力比较强;旌旗席殊网上书店的优势是网点多,覆盖面广。在国外,影响较大的网上书店有美国的亚马逊,德国的贝塔斯曼和英国的因特网书店。其中亚马逊网上书店在1998年拥有450万名顾客,到2002年有将近32亿人网上购书,销售额达到了78亿美元。1999年英国的20亿英镑图书总销售额中,网上销售占5%。英国书业界人士分析,未来英国的网上售书将成为图书销售渠道中的主要渠道。1.3 网上书店的优势(1)网上书店挤压盗版空间网络书店的兴起无疑给盗版商以有力的打击,因为发达的网络可以直接疏通图书的

9、发行渠道,缩短了网上购书者与出版社的距离,给图书消费者以清新、便宜的享受。(2)网上书店浓缩了图书的库存空间传统图书店内的图书摆放面积是有限的,每增加一本书其成本都在以一定比例增加,而网络书店解决了存储空间问题,每增加一本书成本增长几乎为零。(3)数量、种类多,出版时间跨度大综合性的网上书店涉及各种各类内容的图书,提供订购的书目信息达上万、几十万条,而图书出版的时间有最新出版的,也有几十年前的,这是传统书店难以做到的。(4)不受时间、地域限制网上书店是24小时向全球各地的用户提供网上服务的,用户借助网络可以漫游于世界各地的图书海洋中,随时选书、下订单。(5)多途径综合检索网上书店主要提供分类和

10、自定义搜索的方式对图书进行查找。(6)个性服务网上书店不只单纯销售图书,还充分发挥网络优势,提供丰富多彩的个性化服务,满足读者特定的需求。网上书店开设的如新书推荐、畅销书排行、读者评论、作者访谈、专家点评等栏目,既使读者把握全方位的图书信息,又可使其利用网络公告版同图书的作者及其他读者进行在线讨论、交流心得体会,并根据他人的书评来协助选书。2 系统开发技术2.1 MVC模式简介MVC是Model(模型)View(视图)Controller(控制器)的缩写,它适用于大型可扩展的Web应用的开发,它强制性地将应用程序的输入、处理和输出分开,将其划分为模型、视图和控制器三个核心部分,使它们各司其职,

11、各自完成不同的任务,其中任何一部分的修改都不会影响其它两部分。在MVC模式中,模型封装了应用问题的核心数据、逻辑关系和业务规则,提供了业务逻辑的处理过程。模型一方面被控制器调用,完成问题处理的操作过程,另一方面为视图获取显示数据提供了访问数据的操作。因为模型是与数据格式无关的,因此一个模型可以为多个视图提供数据,这样一个模型一次编写可以被多个视图重用,从而避免了代码的重复编写。视图是MVC模式下用户看到的并与之交互的界面。视图从模型处获得数据,视图的更新由控制器控制。视图不包含任何业务逻辑的处理,它只是作为一种输出数据的方式。MVC模式中,控制器主要起导航的作用,它根据用户的输入调用相应的模型

12、和视图去完成用户的请求。控制器本身不输出任何东西,它接受用户请求并决定调用哪个模型构件去处理,以及由哪个视图来显示模型处理之后返回的数据。MVC的处理过程是这样的:对于每一个用户输入的请求,首先被控制器接收,并决定由哪个模型来进行处理,然后模型通过业务处理逻辑处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过显示页面呈现给用户。如下图所示为模型、视图、控制器这三个模块各自的功能以及它们之间的相互关系:图1 MVC模式2.2 Struts是实现MVC模式的框架设计模式是软件开发经验的总结,它是一个概念,是一个逻辑实体,而框架可以看成是基于某一特定平台的一种或几种设计模式

13、的物理实现。设计模式比框架更抽象,设计模式只有其实例才能表示为代码,而框架本身可以用代码表示,框架是一套设计详细的类,类与类之间功能各异,又彼此联系,相辅相成,形成了对某一类问题的可重用的、易扩展的解决方案。Struts是实现MVC模式的通用框架,它由四个主要部分组成,模型、视图、控制器和XML文件。模型通常由Java Bean或EJB组件实现,负责处理业务逻辑;视图包括一组JSP文件,这些文件主要由JSP标签或客户化标签构成,它简化了JSP页面的编码工作;在Struts框架中控制器主要包括ActionServlet类和Action类,ActionServlet是Struts的核心部件,它接受

14、用户的Http请求,根据配置信息将请求转发给适当的Action对象,Action类负责调用模型的方法,并帮助控制应用程序的流程;Struts包括Web.xml和Strutsconfig.xml两个配置文件,其中Web.xml是Web应用的发布描述文件,Strutsconfig.xml是与Struts相关的特殊信息配置的描述文件。3 需求分析网上书店系统主要是实现网上选书、购书、产生订单等功能的系统。一个典型的网上商城一般都需要实现商品信息的动态展示、购物车管理、客户信息注册登录管理、订单处理等模块。3.1 可行性分析开发任何一个基于计算机的系统都会受到时间和资源的限制。因此在开发软件项目之前,

15、必须根据可利用的时间和资源等条件进行可行性研究。可行性研究工作的主要任务不是研究如何解决问题,而是要用最小的代价在最短的时间内确定该项目是否具有开发的可行性。(1)技术可行性:本网站严格按照MVC设计模式来开发,采用JSP、Struts2、Spring和Hibernate等一些JAVA Web相关技术实现。Java语言是一种优秀的编程语言。它最大的优点就是与平台无关,在Windows 、Linux以及其它平台上,都可以使用相同的代码。“一次编写,到处运行”的特点,使其在互联网上广泛采用。JSP+JavaBeans几乎可以在所有平台上通行无阻,从一个平台移植到另外一个平台,JSP和JavaBea

16、ns甚至不用重新编译。除此之外Java语言还提供了一些有用的新特性,使得使用Java语言比C+语言更容易写出“无错代码”。(2)经济可行性:选择图书做本购物系统的主打商品,因为图书属于折扣大利润丰厚的商品,而且网上书店不需要门面等成本开销,故大大降低其价格。加之传递方便、耐存储,故网上卖书具有比传统书店更大的成本优势。有较大的客户群,本网站的商品主要为各类教材,销售对象主要是学生,故存在很大的市场。3.2 系统需求分析通过对系统的分析及对其他网店的参考,基本确定了“网络书城”的基本功能以及基本性能的基本需求。3.2.1 功能需求这方面的需求指定系统必须提供的服务,通过需求分析应该划分出系统必须

17、完成的所有功能。(1)图书查询:当客户进入网上书店时,应该在主页面中分类显示最新的书目信息,以供客户选择所需图书,同时也应该提供按照图书名称,或者作者名称快速查询所需书目信息的功能。(2)购物车管理:当客户选择购买某图书产品时,应该能够将对应图书信息,例如:价格、数量记录到购物车中,并允许客户返回书目查询页面,选择其他商品,并添加到购物车中,当对购物订单生成后,应该能够自动清除以生成订单的购物车中的信息。(3)订单处理:对应客户购买图书商品信息的需求,在确定了所购图书商品的价格、数量等信息后,提示用户选择对应的送货方式及付款方式,最终生成对应的订单记录,以便于网站配货人员依据订单信息进行后续的

18、出货、送货和处理。(4)会员注册:为了能够实现图书商品的购买,需要管理客户相关的联系方式、送货地点等相关信息。3.2.2 性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的要求。(1)用户在客户端点击存在服务器中的主页时,系统能快速响应。(2)在安全性方面,Java程序要满足客户传输信息的基本安全。3.3 数据流程分析3.3.1 顶层数据流图说明:未注册用户通过注册后可以登录到前台进行购书,管理员通过登录可以进入后台进行管理。系统顶层数据流图如下图所示。图2 系统顶层数据流图3.3.2 第一层数据流图前台购书和后台管理。根据顶

19、层数据流图,对前台购书和后台管理模块作进一步分解,得到第一层数据流图。(1)前台购书用户登录后进行书籍浏览和查询,对书籍信息有了一定了解后可根据自己的需求进行购书,购书后将所需书放入购物车,最终确定要购买的图书,提交订单,等待订单的处理结果。系统第一层数据流图(前台购书)如下图所示。图3 系统第一层数据流图(前台购书)(2)后台管理管理员可以登录到后台,查看相关的订单信息,然后修改订单的信息,主要是审核订单的有效性。系统第一层数据流图(后台管理)如下图所示:图4 系统第一层数据流图(后台管理)3.3.3 第二层数据流图用户登录处理。为保证数据的有效和客户的管理,系统必须登录后才能进行购买图书的

20、相关操作,登录是系统安全和数据有效性验证的第一部分。系统第二层数据流图(用户登录)如下图所示:图5 系统第二层数据流图(用户登录)4 系统总体设计4.1 系统设计目标本系统设计的目标是提高软件的质量与生产率,最终实现软件的工业化生产。质量是软件需求方最关心的问题,用户即使不图物美价廉,也要求个货真价实。生产率是软件供应方最关心的问题,老板和员工都想用更少的时间挣更多的钱。质量与生产率之间有着内在的联系,高生产率必须以质量合格为前提。如果质量不合格,对供需双方都是坏事情。从短期效益看,追求高质量会延长软件开发时间并且增大费用,似乎降低了生产率。从长期效益看,高质量将保证软件开发的全过程更加规范流

21、畅,大大降低了软件的维护代价,实质上是提高了生产率,同时可获得很好的信誉。质量与生产率之间不存在根本的对立,好的软件工程方法可以同时提高质量与生产率。4.2 系统模块设计4.2.1 系统结构设计系统总体结构设计确定软件由哪些模块组成以及这些模块之间的动态调用关系。网上书店不是一个简单的概念 ,它包含了许多个内容,是由多个页面组成的一个整体的系统。(1)在操作性方面,采用图形用户界面技术,使系统能够有多重图形窗口和丰富便利的操作界面 ,通过鼠标或键盘的操作 ,为用户提供最简洁的使用方法。(2)在系统开放性方面,按照软件工程开发规范实现系统的开放性,既便于扩充又便于升级,以适用今后其他人的借鉴需求

22、。(3)在系统和数据的安全性方面,系统采用数据库级用户权限和应用程序级运行权限的双重控制机构,提供了统一的基于角色的用户管理手段,具有完善的系统和数据安全的保障体系。根据MVC的设计思想,可以得出如图所示的系统结构设计图。图6 系统结构设计图4.2.2 系统模块设计网上书店系统主要是实现以下两个功能:一是客户在网上查书,选书,购书和产生订单等功能。二是后台的图书管理功能,包括图书种类的管理和图书的管理。一个典型的网上书店一般都有需要实现商品信息的动态展示,购物车管理,会员管理(包括会员信息注册)和订单处理等模块。根据需求分析可以分为五大功能模块,如图所示:该网站的功能模块如下表所示:表1 网站

23、的功能模块功能模块功能概述图书信息管理该模块实现依据书名或作者的信息来对图书信息的快速搜索,也提供图书书目信息的分类查询,显示功能。此外,在用户选择了对应书目信息后,还可以显示出有关该图书的详细信息,以便客户能更详细的了解所购买的商品。购物车管理用于维护每一个进入网上书店的客户对应的购物车,也就是将客户所选购的图书商品信息记录到对应的购物车里,以便于生成订单。会员管理实现网上书店客户信息的注册及身份验证。由于目前网上商城普遍采用的方式为送货上门或者邮寄,因此需要收集与客户相关的真实姓名,通信地址和联系方式等信息。订单管理实现根据客户购物车中的商品信息,以及客户所选择的送货方式和付款方式连同客户

24、对应的个人信息一同生成订单,以便后面进行送货处理。图书管理该模块是后台管理模块,实现进入后台页面的身份验证,图书类型的添加,删除及对应类型下图书信息的发布,删除等功能。5 系统详细设计5.1 系统功能模块设计本网站系统包括两大部分,前台和后台。用户只能使用前台的各项功能包括注册、登录、购物、收藏、浏览书籍信息等;后台只有管理员才能使用,对网站进行综合管理使其动态更新。下图为系统前台主要业务流程与系统前台主要业务流程:图7 系统前台主要业务流程图8 系统后台主要业务流程5.1.1 用户登录模块这里介绍用户登录的程序设计思路,数据库中存放有用户的基本信息,用户在网站中输入相关信息,通过匹配检测,便

25、可以知道数据的有效性。下面是登录程序流程图,如下图所示:图9 登录程序流程图5.1.2 用户注册模块注册模块,会出现在很多程序中,这里借鉴了其他注册程序的流程。注册模块的核心思想是向数据库中输入数据,并且数据要不能重复,下面是注册模块的程序流程图如下图所示:图10 注册程序流程图5.1.3 管理员功能模块网站管理员登录到管理员界面后,可以对图书数据进行添加,修改,删除操作,管理图书信息,方便管理员和用户浏览图书信息,管理员可以添加需要上架的新书以不断的补充书店的图书,让书店的图书更加丰富,对于已经明显显示出下滑趋势的图书,管理员可以进行删除处理,之后用户便不能再看到该书的信息。管理员可以添加公

26、告信息等。5.1.4 图书信息管理模块该模块实现依据书名或作者的信息来对图书信息的快速搜索,也提供图书书目信息的分类查询,显示功能。此外,在用户选择了对应书目信息后,还可以显示出有关该图书的详细信息,以便客户能更详细的了解所购买的商品。主要分为两大部分,图书展示和图书查询。(1)图书展示数据库准备。图书展示和图书查询是将网上书店中的图书有序地罗列出来。该操作涉及到es_bookshop数据库中的es_book数据表。下面是图书展示设计流程图,如下图所示:图11 图书展示设计流程图(2)图书查询图书查询在网上书店中也是一项很重要的功能,主要帮助用户快速地找到想要购买的图书。再一个规模较大的书城中

27、,如果没有这项功能,用户很难找到所需要的图书,那么这个网上书城的吸引力将会因此大大降低。同时好的搜索功能将会带来更多的用户青睐。为适合不同的拥护的需求,本次采用模糊查询的方法为用户提供方便的图书查询。数据库准备。查询图书模块的目的是为了帮助用户快速找到想要购买的图书。由于用户对书城中的图书情况不可能十分清楚,因此采用了模糊查询的方法,只要用户输入了相关的少量信息就可以查询到相应的结果。该操作涉及到es_bookshop数据库中的es_book数据表。另外在模糊查询时使用了数据库系统的like运算符。处理逻辑。处理过程首先建立数据库连接,打开es_book数据表,并按照用户指定的方式和关键字信息

28、将es_book 数据表中满足要求的图书信息显示出来。为了适合用户的不同要求,本次提供了四种查询方法,可按照书名、出版社、作者、ISBN等方式查询,并且查询方法采用模糊查询的方法,这样用户在输入查询信息时只需输入部分信息即可。5.1.5 购物车管理模块购物车管理用于维护每一个进入网上书店的客户对应的购物车,也就是将客户所选购的图书商品信息记录到对应的购物车里,以便于生成订单。本次将以session技术、cookie技术来实现购物车。(1)优点占用系统资源少,我们可以把数据库安置在一台电脑中,Web服务器安置在另一电脑中,系统资源充分发挥。购物车中数据可以得到有效保留,我们可以试想一客户在购物时

29、,突然某其他原因(死机等原因)离开了购物站,他在购物车中数据有效保留下来,他下次登录时购物车中还有上次保留的数据,避免用户再次选购商品的操作(此功能只对登录用户的购物车有效),要是用会话实现购物车,所有用户一旦离开站点,他的购物车中数据全部失效。(2)实现数据库及 session准备。购物车是网上书城必需的一项功能。主要用于记录客户购买的图书编号、书名、出版社、作者、数量、单价等信息,并且应该计算出总价及打折后应付的金额,以便用户随时掌握自己的购买信息。本系统实现购物车时使session技术和数据库。对于用户的购买信息主要用session来记录,购买结束后再一起提交到数据库中,另打折信息是由数

30、据库统一管理的,它是和图书入库一起完成的。这里要注意的是购物车也可以不使用session,而直接把信息写到数据库中,这样做比较简单,但由于每次选购都要将信息写入数据库中,这样将给服务器带来很大的负担。如果有很多用户同时在购书,就很容易使服务器瘫痪。所以基于以上考虑,我们采用session对象。购物车功能定义。购物车是客户在书店中实施购买活动的辅助工具,购物车性能的优劣在某种程度上也会影响购买者的购买情绪和行为。因此在设计购物车时不仅要考虑功能的多样性也要考虑购物车的实用性。本次对购物车的功能如下功能:1)存放客户选好的图书2)可以随时改变是否要购买3)可以随时改变购买的数量 4)可以显示目前购

31、物车中的图书的金额处理逻辑。在购物车信息显示页面中,将显示客户所选的图书信息,在该页面中,客户可以指定选购数据量,也可以将对应商品从购物车中删除。此外,在该页面中也可以返回数目显示页面继续购物,或者清空整个购物车。如果用户确定购物车信息后,可以单击【提交订单】,进入订单确认页面,选择送货方式以及付款方式。下面是购物车程序流程图,如下图所示:图12 购物车程序流程图5.1.6 订单管理模块实现根据客户购物车中的商品信息,以及客户所选择的送货方式和付款方式连同客户对应的个人信息一同生成订单,以便后面进行送货处理。(1)cookie信息及数据库准备生成订单是购书者购书的最后一步了。为了将图书送到客户手中,必须要求客户输入自己的信息(包括送货信息)本次在处理购书信息时采用cookie保存客户的注册信息,还有一些客户的信息在填写订单时一并完成的。购书结帐时会涉及到多个数据表的操作,如es_book表、es_order表、es_orderItem表。(2)处理逻辑在该页面中,客户可以依据表单提示,选择送货方式和付款方式,确认对应选择后,单击【确认】进入订单确认页面。客户确认订单对应的信息后,再单击【生成订单】,将生成客户这次购买图书的订单。如果成功则跳转到订单成功生成页面,一次购物过程基本完成,如单击【返回购物车】则可以继续选购其他图书。下面是生成订单流程图,如下图所示:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1