网上书店系统设计与实现.docx

上传人:聆听****声音 文档编号:342225 上传时间:2023-04-29 格式:DOCX 页数:40 大小:421.07KB
下载 相关 举报
网上书店系统设计与实现.docx_第1页
第1页 / 共40页
网上书店系统设计与实现.docx_第2页
第2页 / 共40页
网上书店系统设计与实现.docx_第3页
第3页 / 共40页
网上书店系统设计与实现.docx_第4页
第4页 / 共40页
网上书店系统设计与实现.docx_第5页
第5页 / 共40页
网上书店系统设计与实现.docx_第6页
第6页 / 共40页
网上书店系统设计与实现.docx_第7页
第7页 / 共40页
网上书店系统设计与实现.docx_第8页
第8页 / 共40页
网上书店系统设计与实现.docx_第9页
第9页 / 共40页
网上书店系统设计与实现.docx_第10页
第10页 / 共40页
网上书店系统设计与实现.docx_第11页
第11页 / 共40页
网上书店系统设计与实现.docx_第12页
第12页 / 共40页
网上书店系统设计与实现.docx_第13页
第13页 / 共40页
网上书店系统设计与实现.docx_第14页
第14页 / 共40页
网上书店系统设计与实现.docx_第15页
第15页 / 共40页
网上书店系统设计与实现.docx_第16页
第16页 / 共40页
网上书店系统设计与实现.docx_第17页
第17页 / 共40页
网上书店系统设计与实现.docx_第18页
第18页 / 共40页
网上书店系统设计与实现.docx_第19页
第19页 / 共40页
网上书店系统设计与实现.docx_第20页
第20页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

网上书店系统设计与实现.docx

《网上书店系统设计与实现.docx》由会员分享,可在线阅读,更多相关《网上书店系统设计与实现.docx(40页珍藏版)》请在冰点文库上搜索。

网上书店系统设计与实现.docx

2013 届毕业设计说明书

基于struts2 的网上书店系统

院、部:

计算机与信息科学学院学生姓名:

指导教师:

职称

专 业:

计算机科学与技术班 级:

完成时间:

2013 年6月

4/39

摘 要

随着网络的不断发展,电子商务平台的不断增多,人们的购物方式变得方便快捷。

在这种情况下,从网上购买书籍需求也变得非常强烈。

因此,开发一套完善的图书管理系统就成不可少了。

本文基于面向对象开发技术[1],详细阐述了网上书店系统的设计与实现过程,该系统采用MySQL数据库,tomcat作为网络应用服务器,在MyEclipse开发环境下面采用html、javascript、css、jquery等技术控制前台界面设计,是一个基于jsp技术和当前主流的MVC框架ssh(spring+struts+hibernate)开发的电子商务网站。

本系统主要实现用户在网上购买书籍的过程,用户可以在网站上面注册用户后登录网站并购买书籍,登录状态下的用户可以对个人的基本信息、登录密码以及订单进行管理。

做到让用户可以不用去书店就能方便快捷的买到自己理想的书籍,享受读书的快乐。

关键词:

网上书店;MySQL;SSH;jsp;java

Abstract

WiththecontinuousdevelopmentofInternet,e-commerceplatform,increasingpeoplebecomeconvenientwayofshopping.Inthiscase,fromonlinebuybooksdemandalsobecomeverystrong.Therefore,developasetofperfectbooksmanagementsystemmanagementsystemasnecessary.

Basedontheobject-orienteddevelopmenttechnology,thispaperexpoundsthedesignandimplementationofonlinebookstoresystem,thesystemUSEStheMySQLdatabase,tomcatasawebapplicationserver,usingHTML,JavaScript,CSS,JQueryatthefrontdeskinterfacedesigntechniquessuchascontrolundertheMyEclipsedevelopmentenvironment,isanMVCframeworkbasedonJSPtechnologyandthecurrentmainstreamSSH(struts+spring+hibernate)developmentofe-commercesites.

Thissystemmainlyrealizestheuserintheprocessofbuyingbooksonline,theusercanloginwebsiteafterregisteredusersonsiteandbuybooks,usercanloginstateforthebasicpersonalinformation,passwordandmanageorders.Doletusersdon'thavetogotoabookshopcanbeconvenienttobuybookstohisideal,toenjoythepleasureofreading.

Keywords:

Onlinebookstore;MySQL;SSH;JSP;java

目 录

I/39

1绪论 1

1.1研究背景 1

1.2研究目的与意义 1

1.3国内外研究现状 2

1.3.1国内网上书店研究现状 2

1.3.2国外网上书店现状 2

1.4相关技术介绍 3

1.4.1Struts2技术简介 3

1.4.2Ajax技术简介 4

1.5论文组织 6

2需求分析 7

2.1综合需求 7

2.2功能需求 7

2.2.1识别外部角色 7

2.2.2用例分析 7

2.2.2场景分析 8

3系统设计 11

3.1系统总体设计 11

3.1.1系统基本流程 11

3.1.2系统功能模块 12

3.1.3系统开发环境 13

3.1.4MVC框架介绍 13

3.2数据库设计 14

3.2.1数据库逻辑设计 14

3.2.2数据库物理设计 15

3.3系统功能模块设计 18

3.3.1用户注册模块 18

3.3.2用户登陆模块 18

3.3.3修改用户资料模块 20

3.3.4图书购买模块 21

3.3.5上架下架图书模块 22

3.3.6图书搜索模块 24

4系统测试与维护 27

4.1系统测试环境 27

4.2功能模块测试 27

4.2.1登录模块 27

4.2.2用户注册模块 28

4.2.3修改用户资料/密码 29

4.2.4上传图书模块 30

4.2.5购买图书 31

总结 32

参考文献 33

致 谢 34

1绪论

1.1研究背景

网络是新时代最盛行的信息传递媒介,网络在发展,信息技术、Internet/Intranet技术、数据库技术地不断发展完善,网络进程的加快,传统的购物方式也越来越不能满足人们快节奏的生活需求,使得企业的IT部门已经认识到Internet的优势,电子商务就是在这样一个背景下产生和发展起来的。

伴随着电子商务技术的不断成熟,电子商务的功能也越来越强大,注册用户可以在网上搜索购买到自己想要的各种商品,初步让人们体会到了足不出户便可随意购物的快感。

我们需要开发一个电子商务系统---网上书店销售系统。

网上书店不同的是,它更多依托地面店的优势运营。

10年之后的2006年,这个国内最早的网上书店演变成了浙江博库书城及其网群。

相同的是,他们仍然更多地依靠地面店的优势在运营。

1999年,国内真正意义上第一家网上书店—

—当当网上线。

北京大学社会学专业毕业、从国家机关辞职下海的李国庆,拿着第一笔风险投资的基金开始了自己的网店生涯。

8年后,这家号称全球最大

中文网上书店的企业营业额已经达到8个亿。

此后,伴随着世界电子商务浪潮的到来,越来越多的网上书店在国内兴起。

1.2研究目的与意义

电子商务将是21世纪的经济增长点,它所带动的电子商务的技术、产品、服务的发展将会给不同的行业带来大量新的机会。

电子商务的快速发展以及上网人数的剧增,为企业创造了许多网络商机。

网上书店作为电子商务系统的一个应用具有如下优点:

⑴突破了商业往来的时间限制:

网络中的计算机可以一天24小时,天天提供客户完善的网络服务。

而且可以提供给全国各地的消费者,以最快的速度将公司图书的外观、内容、价格及相关信息提供给客户了解。

⑵节省公司营运成本:

网上书店本身没有店面,减少了公司的管理费用,此外,网上书店管理系统精简了办公程序,促进了管理的规范化。

⑶提高了客户购物的积极性:

顾客利用网上书店,可以很快的找到所需的图书,提交订单后,图书很快就会送到顾客手中,节省了顾客的购物时间和精力。

34/39

⑷图书商品本身的优越性:

根据国内外同行的经验,专业、学术等图书更加适合邮购、自销等无店铺销售。

1.3国内外研究现状

1.3.1国内网上书店研究现状

在国内,有关在电子商务中的企业创新行为也有了一定的研究,近年来报刊杂志讨论的文章很多。

⑴对于传统书店和网上书店的存在和发展问题,国内学者认为,方便和快捷的网络正在改变人们传统的购书习惯,网络销售目前已占据整个图书市场的5%,未来的3至5年,网络售书将占到图书市场的20%至30%。

而与此对应的是,传统书店也深深的感受到网上书店带来的阵阵冲击,或改革、或学习,传统书店面临诸多生存挑战。

不过,虽然网上书店具有着众多的优势,尤其在市场范围和成本优势上,但是传统的实体销售和网络销售面对的是不同的顾客群,彼此是不可取代的,甚至可互动、互促,提高交易频率。

因此,建议传统书店要结合网上书店一起经营。

⑵国内学者普遍认为一个完整的网上书店系统要实现商家在线发布商品信息、消费者在线购买等功能,主要有以下几点功能:

后台的网站数据远程维护包括业务数据和分类与信息的添加、修改、删除等功能;

分类的灵活维护拥有不限制数量根据业务的多级分类目录;可以在线添加、删除、修改书目各级类别;

注册用户、商品信息轻松地维护;

支持商品图片上载功能,订单结算统计功能;用户免费注册及用户信息修改功能;

购物流程简单快捷,包含商品折扣机制,强大的信息分类检索浏览功能,分类列表简洁,商品条目分页显示;强大的信息查询功能,使用户更快捷地查找到用户所要的商品信息;面向消费者的订单查询功能,其他功能还包括读者点评、新书预定、用户个性化设等功能;界面友好,用户浏览网页时候视觉舒服,网站功能方便快捷易用;兼容性好,系统支持Access数据库,SqlServer数据库,即装即用。

1.3.2国外网上书店现状

世界上第一家网上书店是1991年在美国联机公司(AOL)的网络上建立的"阅读美国"书店。

1994年贝佐斯在西雅图成立的亚马逊网上书店,如今已成为全球最大网上书店,1998年的顾客总数为450万,销售额达6.1亿美元,股票市值100

多亿美元,控制着美国80%的网上图书销售市场。

亚马逊网上书店的成功在图书销售领域产生了巨大影响。

1997年5月,美国最大的连锁书店巴诺书店也正式开办了网上书店。

此外,美国较有名的网上书店还有肥脑网上书店鲍德斯网上书店等。

据统计,到1998年美国的网上书店已达1200多家。

英国的书店也比较多,大型的有因特网书店(Internetbookshop)、字母街网上书、沃特斯通网上书店。

1998年,英国网上书店图书销售额为1500万英镑。

德国的网上书店主要有贝塔斯曼出版集团的图书在线网上书店()、霍尔兹布林克出版公司和施普林格出版社联合开办的T-ONLINE网上书店等。

据资料显示,1998年德国购书的网民达40万人。

1.4相关技术介绍

1.4.1Struts2技术简介

struts2[2]并不是一个陌生的web框架,它是以Webwork的设计思想为核心,吸收struts1的优点,可以说struts2是struts1和Webwork结合的产物。

图1Structs2原理图

一个请求在Struts2框架中的处理分为以下几个步骤:

⑴客户端发出一个指向servlet容器的请求(tomcat);

⑵这个请求会经过图中的几个过滤器,最后会到达FilterDispatcher过滤器。

⑶过滤器FilterDispatcher是struts2框架的心脏,在处理用户请求时,它和请求一起相互配合访问struts2的底层框架结构。

在web容器启动时,struts2框架会自动加载配置文件里相关参数,并转换成相应的类。

如:

ConfigurationManager 、 ActionMapper 和 ObjectFactory 。

ConfigurationManager存有配置文件的一些基本信息ActionMapper存有action的配置信息。

在请求过程中所有的对象(Action,Results,

Interceptors,等)都是通过ObjectFactory来创建的。

过滤器会通过询问ActionMapper类来查找请求中需要用到的Action。

⑷如果找到需要调用的Action,过滤器会把请求的处理交给ActionProxy。

ActionProxy为Action的代理对象。

ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类。

⑸ActionProxy创建一个ActionInvocation的实例。

ActionInvocation在ActionProxy层之下,它表示了Action的执行状态,或者说它控制的Action的执行步骤。

它持有Action实例和所有的Interceptor。

⑹ActionInvocation实例使用命名模式来调用,首先ActionInvocation初始化时,根据配置,加载 Action相关的所有Interceptor。

然后通过ActionInvocation.invoke方法调用Action实现时,执行Interceptor。

在调用Action的过程前后,涉及到相关拦截器(intercepetor)的调用。

⑺一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。

返回结果通常是(但不总是,也可能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。

在表示的过程中可以使用Struts2框架中继承的标签。

1.4.2Ajax技术简介

众所周知,Ajax[3]并不是一个新生的语言,它是一系列语言的结合体:

HTML/XHTML、CSS、DOM、XML、XSLT、XMLHttp、JavaScript。

可以说Ajax涉及的知识面的确是很广的,在Web开发中为我们提供了很方便的交互式用户体验模式。

以往我们浏览网页的原理是由Client向Server提交页面申请,再由Server将申请通过HTTP传回给Client生成浏览页面:

图2Ajax原理图

使用Ajax后的工作原理如下图,可见通过Ajax在用户交互方面有了很大改进,用户可以不用为提交了Form而长时间等待服务器应答,而且通过Ajax也可以开发出华丽的Web交互页面。

图3Ajax工作原理图

在利用Ajax向服务器提交请求时,需要先确定三点:

⑴使用GET或POST方式提交请求?

⑵需要请求的页面(Page)或代码(Script)?

⑶将请求的页面或代码加载到页面什么位置?

其中readyState表示当前对象状态,分为0~4的类别,0:

uninitialized,1:

loading,2:

loaded,3:

interactive,4:

complete。

status表示HTTP响应状态,常见状态有 200OK,304NotModified,401Unauthorized,403Forbidden,404NotFound,500InternalServerError,503ServiceUnavailable。

代码中认定 readyState==4 和status==200为正常状态。

1.5本文组织结构

本文围绕着开发一个基于struts2的网上书店系统,描述了完成这个系统的主要过程,本文分为如下几个部分:

第一章是介绍网上书店系统的背景及国内外现状;

第二章主要对网上书店系统的需求进行了详细的分析,为系统的设计做好前期准备;

第三章主要是系统的设计思路及详细实现过程,主要包括了系统总体设计,数据库设计以及系统功能的具体实现;

第四章对系统进行了系列的测试,验证最后的系统功能;第五章对本项目所获得的系统做了相应的总结。

2需求分析

2.1综合需求

基于struts2的网上书店系统,基本能够实现书店销售的一些流程,做好信息的录入。

该系统是一个基于internet网络的网上B/S[9]书籍交易平台,用户可以通过在网上点击搜索查看并购买书籍,正真做到足不出户就可以获得自己想要的学习资料及课外书籍。

功能主要包括:

用户注册/登陆、用户资料修改、购买书籍、用户账单管理等功能。

2.2功能需求

2.2.1识别外部角色

在买书网这个系统中,首先我们可以确定“管理员”和“普通用户”是该系统的两个主要实体。

2.2.2用例分析

管理员负责维护系统书籍并使用系统的主要功能,普通用户从系统中获取所需要的书籍及对自己基本资料进行维护。

以上两个实体的主要功能如表 1所示;用例图如图4所示。

表1基本用例

实体 功能

普通用户注册用户

注册、查询图书

登陆、修改个人资料、查询/购买图书、订单查询

管理员 登陆、上架图书、下架图书、管理系统用户

<>

<>

<>

<>

登录

修改基本资料

<>

<>

<>

登录

<>

<>

注册用户

修改资料

修改密码

下架图书

<>

<>维护系统

管理员

<>

图书功能

<>

<>

查询图书

修改图书<>

修改个人资料

<>

购买图书

上架图书

<>

查询订单

<>

访问主页

普通用户

查询图书

图4系统用例图

2.2.2场景分析

用户登陆场景:

用户输入用户名和密码之后将数据提交到后台,后台对用户名和密码进行判断,如果判断成功跳转到首页,如果不成功就返回让用户重新登录。

用户

登录页面

后台数据库

首页

请求登录

身份验证

验证成功

验证失败

图5 用户登陆顺序图

用户注册场景:

用户访问注册页面输入用户基本信息及登录密码之后,前台先对数据合法性判断,判断成功之后提交到后台,后台将数据最终回写到数据库库。

用户

注册页面

后台数据库

首页

请求注册

合法性验证

注册成功

验证失败

图6用户注册顺序图

用户修改资料场景:

用户登录系统之后可以查看并修改用户相关资料,主要包括修改登录密码、联系方式及其他除用户名之外的所有信息。

用户

修改资料页面

后台数据库

首页

填写修改内容

合法性验证

修改成功

验证失败

图7修改用户资料顺序图

用户账单管理场景:

用户购买书籍后会生成相应的账单,用户在登录系统

的状态下可以查看并管理自己的账单。

用户账单管理主要只提供查看功能,用户可以通过制定对应日期及相关条件查看制定的订单。

用户 订单页面 后台数据库

请求订单页

查询返回数据修改订单返回结果

图8账单管理顺序图

图书上架/下架场景:

当有存在图书过期或者断货的时候管理员可以对图书进行下架,简单来说就是将对应的图书删除不在显示在书店中,同样当存在新的图书的时候管理员可以添加新的图书到书店中,添加时候管理员需要提供图书的详细信息。

用户 添加图书页面 后台数据库

添加图书

提交返回消息

图9上架图书顺序图

3系统设计

系统设计的目的是[9]确定系统如何完成预定的任务,也就是确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。

首先需要从数据流程图[15]出发,设想完成系统功能的若干种合理的物理方案,分析员应该仔细比较这些方案,并且和用户共同选定一个最佳的方案,然后,进行软件结构设计,确定软件由哪些模块组成以及这些模块之间的动态调用关系。

进行软件结构设计时应该遵循的最主要的原理是模块独立原理,也就是说:

软件应该由一组完成相对独立的子功能模块组成,这些模块之间的接口关系应尽量简单。

自顶向下逐步求精是进行软件结构设计的常用途径,但是,如果已经有了详细的数据流图,也可以使用面向数据流的设计方法,用形式化的方法有数据流图映射软件结构。

在进行详细的过程设计和编写程序之前,首先进行结构设计,其好处在于可以在软件开发的早期站在全局高度对软件结构进行优化,在这个时期进行优化付出的代价不高,却可以是软件质量得到重大的改进。

3.1系统总体设计

3.1.1系统基本流程

基于struts2的网上电子书店,实现网上购书的整个流程,用户进入网站的主页,可以先浏览书籍,也可以选择先注册用户成为书店的合法用户,如果用户没有注册并且登陆,是不能够实现下单操作的。

用户可以通过网站上的图书查询或者点击图书,浏览商品的详细信息,如果要购买该书籍,则可以点击购买按钮将该书籍加入购物车,然后可以选择继续浏览书籍,或者去结账下单操作,如果此时用户没有注册登陆,则是不能够进行下单操作的,在对购物车进行操作时候,用户可以选择修改商品的数量,也可以选择删除该商品,删除的将放在下面的页面显示删除过的商品,用户可以选择恢复操作,恢复刚刚删除的商品,用户可以直接点击结账进入确定购买的商品,然后用户选择下一步填写收货地址,收货用户以及一些其他的基本信息,如果用户以前购买商品,用户可以选择以前使用过的商品地址,直接生成,减少用户的数量两,最后,最后生成一个订单信息,告诉用户。

此时用户还可以继续购买书籍。

整体流程如图10所示。

用户注册

没登陆

用户资料修改

用户等登

继续购书

查找图书

清空购物车

添加到购物车

修改数量

退回指定图书

查看购物车

成功添加

结账

生成订单

支付

确认收货

订单查询

图10整体流程图

3.1.2系统功能模块

⑴用户模块:

用户注册部分:

网上书店规定只有合法用户才能购买图书,所以要购买图书的新用户必须进行注册,为了能及时发货给用户以及随时联系用户,所以系统必须记录每一位用户的详细信息。

在用户注册的时候,提供用户名的唯一性验证,密码安全性验证。

用户登录部分:

提供用户登录功能,如果用户名和密码不正确,不允许登录。

用户名密码验证成功就提示用户登录成功,用户就可以进行购买操作。

⑵查看书籍模块:

提供用户浏览各个书籍的功能,用户能够根据自己的需要浏览需要的商品,同时还提供购买操作功能,将用户需要购买的商品加入购物车。

⑶购物车模块:

记录用户浏览购买的商品,提供用户删除指定的商品,清空购物车里面的商品。

⑷订单模块:

用于生成用户的订单信息,并且记录用户的订单信息到数据库中,同时记录用户的地址信息。

网上书店

用户模块

图书显示

生成订单

购物车

数据库

用户注册

用户登陆

添加至购物车

查看购物车

移除指定图书

清空购物车

新书上架

图书分类浏览

销售排行

⑸数据库模块:

用于存放用户的数据,图书的数据,以及用户订单的数据等。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2