网上图书销售系统的设计与实现.docx

上传人:b****5 文档编号:6816991 上传时间:2023-01-10 格式:DOCX 页数:26 大小:346.21KB
下载 相关 举报
网上图书销售系统的设计与实现.docx_第1页
第1页 / 共26页
网上图书销售系统的设计与实现.docx_第2页
第2页 / 共26页
网上图书销售系统的设计与实现.docx_第3页
第3页 / 共26页
网上图书销售系统的设计与实现.docx_第4页
第4页 / 共26页
网上图书销售系统的设计与实现.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

网上图书销售系统的设计与实现.docx

《网上图书销售系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《网上图书销售系统的设计与实现.docx(26页珍藏版)》请在冰豆网上搜索。

网上图书销售系统的设计与实现.docx

网上图书销售系统的设计与实现

网上图书销售系统的设计与实现

摘要:

随着互联网和电子商务近年来的飞速发展,网购和网上商城等应用已逐渐成为人们日常必备的购物途径,而网上书店则是电子商务在图书销售行业发展的必然结果。

本文阐述了采用B/S构架、JSP网络编程技术开发网上图书销售系统的详细过程。

从系统的安全性和代码的可重用性方面考虑,配合使用了JavaServlet、JSP、HTML等技术,建立了较完整、安全性较强的数据库,分析了网站前后台应用程序的实现方式及业务流程,实现了整个系统框架设计的全部功能。

关键字:

B/S;JSP;JavaServlet;HTML

Abstract:

WiththerapiddevelopmentofInternetande-commerceinrecentyears,onlineshoppingandonlineshoppingmallhavegraduallybecomethenecessaryshoppingways.AndtheonlinebookstoreistheinevitableresultofthedevelopmentofE-commerceinbooksalesindustry.ThisarticledemonstratesthedetailedprocessofusingtheB/Sstructure,andtheJSPnetworkprogrammingtechnologytodeveloptheonlinebooksalessystem.Andconsiderthesecurityofthesystemandthereusabilityofthecode,cooperatewithJavaServlet,JSPandHTMLetc.Thesystemestablishesamorecompleteandmoresecuredatabase.Itanalyzedtheimplementionmethodandbusinessprocessesofforegroundandbackgroundapplicationprograms,andrealizedallthefunctionsofthewholesystemdesignframework.

Keywords:

B/S;JSP;JavaServlet;HTML

 

1绪论

1.1课题的研究背景

随着互联网的兴起到如今的强大,短短的时间内互联网已经给人们的生活带来了巨大的改变。

它的发展速度是令人惊叹的,现如今人们的吃、住、行、游、购、娱都已离不开互联网,它犹如蛛网一般紧密地覆盖了人们生活中的各个方面,而随着现代人愈加繁忙,生活速度越来越快,人们对生活质量的要求也越高,而网上购物对他们来说即有效率,也更丰富多样,选择性也更多,最重要的是可以足不出户。

因此,搭建一个实用的网上商店是很重要的。

目前由于在网上购物发展良好的趋势之下,电子商务的模式也在增多(现已有C2C、B2C、O2O、B2B等),国内网上购物网站的类别也越来越多,而网上书店却只是占据着其中的冰山一角。

现今最受人们青睐的网上书店当属亚马逊卓越、当当网和京东商城。

从近年来这些网站的发展趋势来看,网上书店这一类电子商务网站还是比较有发展前景的,加上不断有新的图书销售网站的建立,就更加印证了“网上书店是图书销售市场未来发展的必然结果”这句话。

就网上书店这类网站来说,为什么人们越来越愿意在网上购书,而不是去实体店,其原因是:

首先,网上书店相较于实体店价格更低,因为网络售书不会存在门面、雇员、水电、管理等一些实体店必须产生的费用支出,所以它的成本更低;其次,网络售书可以更方便的去随时进行促销、打折,而不需要再另外花费去做广告,而且这样还可以聚积人气;最后,现在很多网上书店,例如当当网都可以进行在线试读,还有作者简介、编辑介绍、内容简介等有用的信息显示在网页上,这可以让读者进一步去了解这本书,从而刺激他们的购买欲。

很多人会担心在网上看不到书籍具体的样子,最后买到的书质量不好,但是现在很多网上书店都采取了一些措施去弥补这样的不足,例如京东商城,就会鼓励消费者在收到货之后对书籍进行晒图和评价,这可以让后续的消费者很直观的看到书籍的好坏,也可以帮助他们做下一步的决定。

这一系列的优势都是实体店所没有的,所以网上书店,一种改变传统销售模式,且没有时间和空间限制的新型书店,在中国这个具有良好群众基础的大环境下有十分美好的发展前景。

1.2课题的研究目的

由于20世纪90年代互联网的兴起,计算机的应用随之普及,计算机相关的职业也应运而生,提升了就业率,较大幅度的影响了人类的生活。

电子商务即为现今科技快速发展、互联网的广泛应用下的产物,发展至今,电子商务的相关技术已经日趋成熟,越来越多的各类型网上商铺、网购网站出现在人们生活中,而进行网上图书销售的网站也占据着这巨大市场的一角,虽然现在图书实体经营依然存在,但不得不肯定的是线上买书更方便人们买到自己想要的,也给了人们更多的空间去购买、对比,也更节约时间,这就是为什么网上书店能在如此短的时间内从原来大家的不认可,不信任,到现在全民网购的原因之一。

但是,网上书店有利也有弊,随着此技术发展的愈加快速,很多问题也出现了。

由于一些系统的难操作,容易造成很多失误,给商家和消费者带来麻烦,所以本课题就想开发出一种简洁大方、友好的界面,功能一目了然,能让用户易查询使用,且能在短时间内搜索到满意的书籍;让管理员更方便后台的管理,从繁琐的手工操作中解脱,可以满足消费者和管理员双方面的需求,给大家都带来便利的网上购书系统。

1.3课题的可行性分析

我通过对比了当下较流行的当当网、亚马逊图书、中国图书网等网上书店,对网上书店的大致布局有了基本了解,在参考了许多网站的设计模式,逐渐确定了本系统应具有的某些功能和性能。

本系统的开发只需要一台电脑,基本不需要购买其他设备或软、硬件,也没有人力花销,所以经济上是可行的。

在技术上,使用的是现在已是大多网站都采用的,现已趋于成熟的Servlet&JSP来进行开发,JSP支持多平台,多样化且功能强大;Servlet提供大量实用的工具例程,降低了开发难度。

再加上搭建了Java虚拟器和Tomcat环境,在与数据库连接后,即可正常运行。

2系统开发相关技术

选对开发技术很重要,一个系统选择不同的开发技术,就会决定此系统中一些方法实现手段的不同,与此系统是否易于维护和管理、是否可跨平台、是否可重用都是不同的。

因此开发一个系统,选对相应的技术是最基本也是最重要的。

2.1系统开发环境

本系统在Windows7、64位操作系统下进行开发,并采用开源的Java语言,利用现在使用较广泛的JSP+MySQL数据库的架构来实现,以便维护和管理。

并采用当前主流的Java开发平台Eclipse作为该项目的开发平台,以及开源的ApacheTomcat7作为服务器。

2.2相关技术介绍

2.2.1B/S结构

B/S是Browser/Server的缩写,B/S结构即浏览器/服务器结构。

这种结构统一了客户端,将系统功能实现的核心部分和应用逻辑都集中到服务器上,如此便大大简化了客户端,在需要系统升级时,只需更新服务器端的软件,而不必更换客户端的软件,这样更方便系统的维护和管理,同时降低了成本,减轻了工作量,使工作更有效率。

本系统采用这种结构就会使开发相对简单,维护较方便,共享性强,最重要的是降低了开发成本。

2.2.2Servlet&JSP技术

B/S结构中的框架本质上都是基于Servlet来实现的,而Servlet是指实现了servlet接口的Java程序。

Servlet通常会依赖一种容器来运行,本系统采用的是Tomcat软件来作为Servlet的容器,它可同时管理Servlet组件并且充当Web服务器。

当Web服务器收到客户端的访问请求时,如果服务器已装载并创建了该Servlet的实例对象,便会再创建请求消息和响应消息的两个对象,然后调用Servlet的service()方法将请求和响应对象作为参数传递进去。

JSP和Servlet一样,它们实质上是同一个事物,但是一体两面。

JSP是用于开发动态页面的技术,它有点类似于HTML,但是HTML只能提供静态数据,而JSP技术可在页面中嵌套Java代码,呈现动态交互的页面。

2.2.3MySQL数据库

MySQL是一个小型的,多用户多线程的关系型数据库,现今很多中小型网站都采用MySQL来作为网站的数据库,它的工作模式是B/S结构,恰巧符合本系统所采用结构模式,而且它的优点很多,例如:

可跨数据库连接、运行速度快、支持面向对象、安全性高、多线程、成本低等。

所以用作本系统的数据库,用来存放用户信息,图书信息等恰到好处。

3系统需求分析

需求分析是一个项目的开端,也是项目实施最重要的关键点。

该阶段是分析系统在功能上需要“实现什么”,也是一个不断认识和逐步细化的过程,在此阶段我们需要确定软件实现哪些功能,完成哪些工作。

3.1系统的功能需求

本系统主要分为前台管理系统和后台管理系统两部分,前台管理系统具有用户注册及登录、图书信息、图书搜索、添加商品到购物车、留言等功能;后台管理系统有订单管理、用户信息管理、商品的添加与删除管理、后台数据库管理等功能。

前台管理系统的功能需求:

(1)游客可注册成为会员

像大多数购物网站一样,只有游客注册成为会员,数据库存有会员的一系列基本信息之后才能进行添加商品到购物车,进而下订单,最后付款购买这些流程。

当然若只浏览商品信息,则不必注册。

(2)修改个人信息

会员可以根据自己的需求来对自己之前注册时填入的信息进行修改,因为某些信息会对之后的发货产生影响,所以部分信息必须要求为真实。

(3)图书搜索功能

通过图书搜索功能,选择图书大小类,可以快速搜索到用户所需的图书。

(4)添加商品到购物车、删除商品、下订单

已注册会员在成功登录后,可浏览图书并添加到购物车,随后可在购物车里对图书数量进行更改,也可删除不想要的商品,确认后即可下订单,最后进行在线购买。

(5)删除订单

会员在个人中心查看订单时,可以查看订单中的订单项,包括其中的数量、价格等信息,也可删除还未发货的订单。

(6)会员可在网站留言

会员登录后,可以在留言板中留言,表达自己对网站的看法或提出建议。

后台管理系统的功能需求:

后台主要是对网站前台涉及到的一些信息(如文字、图片、影音等)的管理。

(1)可让各类管理员登录

不同类别的管理员分别管理不同的部分,每个管理员设有权限,只能管理自己的那部分内容。

(2)可让管理员发布公告,使用户及时了解关于网站的一些动态

(3)可让会员管理员管理会员信息

会员管理员可看到会员基本信息,以及对会员进行删除。

(4)可让商品管理员添加、修改及删除商品信息

(5)可让订单管理员处理订单

会员在线购买生成订单后,由订单管理员对订单进行处理,包括订单发货、冻结订单等。

3.2数据流图

图3-1是系统总体的数据流图,它表现出了整个系统的参与人员和所有数据流的种类。

从下图可以看出,本系统主要接收的数据有注册的用户信息、订单信息、留言信息、管理员信息以及商品处理信息等等。

 

图3-1系统总体数据流图

图3-2是第一层数据流图,是对系统总体数据流图的进一步细化。

图3-2第一层数据流图

图3-3详细的表示出购买和下订单处理流程的数据输入输出流。

用户浏览商品信息,找到满意的商品之后,可以把其加入购物车,也可修改购物车中商品的数量或是删除不想要的商品,确定购买的商品后就可以结算并提交订单信息。

图3-3订购处理流程的详细数据流图

4系统总体设计

总体设计是系统开发过程中至关重要的一步,系统质量的好坏与功能是否完善,及一些整体特征,基本上是由这一步来决定的,因此总体设计必须是全面且准确的。

4.1功能模块设计

4.1.1系统功能描述

整个系统分为了两个相对独立的功能模块,分别为前台功能模块和后台功能模块。

在前台功能模块中主要实现用户注册和登录、修改用户个人信息、用户添加商品到购物车、修改购物车中商品数量、删除商品、生成订单等功能。

在后台功能模块中主要实现管理员登录、用户管理、商品管理、订单管理、留言管理、公告管理等功能。

具体功能如图4-1所示:

图4-1系统功能结构图

(一)

图4-1系统功能结构图

(二)

4.1.2系统处理流程

(1)系统整体业务流程

系统中游客(未注册用户)可以浏览网站商品,搜索商品信息,但却不能购买商品,而已注册用户可以添加商品到购物车,更改其数量、购买商品、提交订单。

系统整体业务流程图如下图4-2所示:

图4-2系统整体业务流程图

(2)购物车处理流程

输入会员、商品、订单基本信息,将订单信息提交到订单信息表中,并增加订单项到对应的订单项信息表。

图4-3显示了购物车的整个处理流程。

图4-3购物车处理流程

(3)订单发货处理流程

输入商品、订单、订单中的商品信息,生成新的发货订单。

表4.1描述的是系统订单发货处理的流程设计,表示了在系统进行发货处理时,将会用到的一些数据、表格,以及处理完成之后,系统输出的相关状态和数据。

而图4-4是对于表4.1的进一步细化和整理,使其更清晰明了的表示订单发货的整个处理流程。

表4.1订单发货处理的流程设计

程序名称

订单发货处理

相关数据库表

订单信息表、订单项信息表、商品信息表

输入

订单信息状态,商品数量、订单项信息

输出

新的订单状态和商品数量

程序处理

读取订单状态

读取对应订单项

验证订单项对应商品是否满足发货要求

图4-4订单发货处理流程

4.2系统E-R图设计

数据库概念模型设计,是主要根据用户的需求,通过E-R图来描述现实世界的概念模型。

而E-R图简要的说就是将现实世界中事物与事物之间的联系,各个事物所具有的特性实例化,使其可以用简明的方式描述出来,更便于我们的理解以及后续的操作。

本系统的E-R图表现了系统中各个实体之间的联系,如下图4-5表示的是用户在前台可看到的部分信息和操作的一系列流程中所包含的各个实体以及他们之间的联系。

实体所具有的某一特性成为属性,一个实体可以有若干个属性。

下图4-6表示了图书的小类别属性,图4-7表示了图书的大类别属性,图4-8表示了图书的属性,图4-9表示了用户留言属性:

图4-6图书小类别E-R图

图4-9用户留言E-R图

下图4-10表示的是用户E-R图,其中包含用户注册时所需填写的信息,即用户的属性;图4-11表示的是订单属性,其中包含订单所必须具有的收货人地址,账号等;图4-12表示的是订单项,即购买的书籍属性:

图4-10用户E-R图

 

4.3数据库设计

数据库是组织、存储和管理数据的仓库,数据库设计的好坏将直接关系到系统开发的优劣、成败及系统操作的难易度。

(1)表4.1用户信息表,表中涉及的信息很多,是为了能确保用户数据的准确度,便于之后的一系列操作。

表4.1用户信息表tb_user

字段名

类型

是否为空

含义

ID

int(13)

NO

主键,用户ID号

name

varchar(30)

NO

用户登录名

password

varchar(16)

NO

登录密码

email

varchar(50)

NO

邮箱

trueName

varchar(40)

NO

真实姓名

sex

varchar(20)

YES

性别

birthday

varchar(20)

YES

出生年月

address

varchar(100)

YES

住址

postcode

varchar(8)

YES

邮编

mphone

varchar(15)

YES

手机

question

varchar(30)

NO

安全问题

answer

varchar(30)

NO

安全问题答案

(2)表4.2管理员信息表,用于存放管理员账号、密码及姓名等信息。

表4.2管理员信息表tb_admin

字段名

类型

是否为空

含义

ID

int(6)

NO

主键,管理员ID

AdminType

int(13)

NO

外键,管理员类别

AdminName

varchar(50)

YES

管理员真实姓名

LoginName

varchar(15)

NO

登录账号

LoginPwd

varchar(15)

NO

登录密码

(3)表4.3管理员类别表,存放管理员的类别信息。

表4.3管理员类别表tb_admintype

字段名

类型

是否为空

含义

AdminTypeId

int(13)

NO

主键,管理员类别ID

AdminTypeName

varchar(50)

NO

管理员类别名称

(4)表4.4书籍大类别信息表,用于存放书籍大类别信息,分书籍大类别和小类别是因为这样可以更细的划分书籍,对书籍归类,便于用户查找。

表4.4书籍大类别信息表tb_supertype

字段名

类型

是否为空

含义

superTypeId

int(13)

NO

主键,书籍大类别ID

typeName

varchar(50)

NO

大类别名称

(5)表4.5书籍小类别信息表,外键为书籍大类别,是因为用户只有先查找书籍大类别,才能再查找小类别。

表4.5书籍小类别信息表tb_subtype

字段名

类型

是否为空

含义

subTypeId

int(13)

NO

主键,书籍小类别ID

superTypeId

int(13)

NO

外键,大类别ID

subTypeName

varchar(50)

NO

小类别名称

(6)表4.6图书信息表,表中的信息很多,这样更便于用户了解图书的详细信息。

表4.6图书信息表tb_book

字段名

类型

是否为空

含义

bookId

int(13)

NO

主键,书籍ID号

superTypeId

int(13)

NO

外键,所属大类别ID

subTypeId

int(13)

NO

外键,所属小类别ID

bookName

varchar(200)

YES

书籍名称

ISBN

varchar(20)

YES

ISBN号

introduce

text

YES

介绍

price

float

YES

原价

nowPrice

float

YES

现价

续前表4.6图书信息表tb_book

字段名

类型

是否为空

含义

picture

varchar(200)

YES

图片

pages

int(13)

YES

页数

publisher

varchar(40)

YES

出版社

author

varchar(30)

YES

作者

inTime

timestamp

YES

上传时间

bookNum

int(13)

YES

库存数量

(7)表4.7订单明细表,表中的收货人名称、收货地址、邮编、邮箱都是用户下订单之后,需要用户再次确认的,便于进行发货处理,其余都是后台发货时需要的信息。

表4.7订单明细表tb_order

字段名

类型

是否为空

含义

orderId

int(13)

NO

主键,订单ID号

name

varchar(20)

YES

购买账号

recvName

varchar(20)

YES

收货人名称

address

varchar(20)

YES

收货地址

postcode

varchar(10)

YES

邮编

email

varchar(20)

YES

邮箱

orderDate

timestamp

YES

订单日期

flag

int(13)

NO

0-未发货1-已发货2-已冻结

(8)表4.8订单项信息表,即为用户订单里面的书籍的主要信息。

表4.8订单项信息表tb_orderitem

字段名

类型

是否为空

含义

orderItemId

int(13)

NO

主键,订单项ID号

orderId

int(13)

NO

外键,所属订单ID号

bookId

int(13)

NO

外键,书籍ID

bookName

varchar(50)

YES

书籍名称

price

float

YES

价格

bookNum

int(13)

YES

购买数量

(9)表4.9公告信息表,用于存放公告信息。

表4.9公告信息表tb_inform

字段名

类型

是否为空

含义

informId

int(13)

NO

主键,公告ID

informTitle

varchar(30)

YES

公告标题

informContent

varchar(30)

YES

公告内容

informTime

timestamp

YES

公告发布时间

(10)表4.10留言信息表,由于是用户留言,所以作者信息不能为空,也就是说用户不能匿名留言。

表4.10留言信息表tb_note

字段名

类型

是否为空

含义

ID

int(13)

NO

主键,留言ID

title

varchar(20)

NO

标题

author

varchar(20)

NO

作者

content

varchar(50)

NO

内容

ly_time

timestamp

YES

留言时间

5系统详细设计与实现

在对系统进行总体设计之后,系统大致的流程都已逐渐明了,现在就可以进行详细设计了。

详细设计是指如何来实现前文所分析的系统需求,是真正开始实际操作的阶段。

因此,此环节对于整个系统而言至关重要。

5.1后台登录模块设计

图5-1是后台登陆的流程图,图5-2是后台登录界面,管理员进入后台管理系统,输入正确用户名和密码就能进入系统。

 

图5-2后台登录界面

部分功能代码如下:

throwsServletException,IOException{

request.setCharacterEncoding("gb2312");

Stringname=request.getParameter("name");

Stringpassword=request.getParameter("password");

Adminadmin=newAdmin();

admin.setLoginName(name);

admin.setLoginPwd(password);

Modelmodel=newModel();

try{

inttype=(Integer)model.login(admin);

if(type!

=0){

ServletContextcontext=this.getS

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

当前位置:首页 > 高等教育 > 文学

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

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