计算机毕业论文网上书店系统.docx
- 文档编号:6501705
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:19
- 大小:1.34MB
计算机毕业论文网上书店系统.docx
《计算机毕业论文网上书店系统.docx》由会员分享,可在线阅读,更多相关《计算机毕业论文网上书店系统.docx(19页珍藏版)》请在冰豆网上搜索。
计算机毕业论文网上书店系统
XX工业大学
软件开发技术报告
课题名称
简单网上书店系统的设计与实现
学院
计算机
专业班级
计算机科学与技术
组长
成员
摘要
21世纪以来,人类经济高速发展,人们的生活发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。
为了让消费者网上购物过程变得简单、方便、安全、快捷,网上购物成了一种新型而热门的购物方式。
而网上书店的出现,更是满足了那些对书有渴望的朋友们。
让他们足不出户便能购得自己心仪的好书。
简单网上书店系统是一种具有交互功能的商业信息系统,它在网络上建立一个虚拟的购物商城,使购物过程变得轻松、快捷、方便。
简单网上书店系统实际上是一个B/S结构的信息系统,目前开发这种系统用到的主要开发工具有:
ASP、JSP、PHP等,用到的数据库主要是一些流行的大型数据库,如Oracle,SQLserver,MYSQL等,我们开发该系统用到的开发工具为JSP,数据库使用的是MYSQL。
本系统实现了用户在线注册、定购商品、浏览商品、查询商品信息等操作。
关键字:
网上书店,B/S,JSP,方便
1.1.1简单网上书店系统的构建
1.2.1Myeclipse、tomcat6、mysql1
1.2.2html语言1
4.1.1逻辑设计规范
4.1.2E-R图与关系模式的转换
4.1.3逻辑结构表
1.绪论
1.1概述
简单网上书店系统实际上是一个B/S结构的信息系统,由java语言实现。
在JDK环境下,我们采用Myclipse开发软件,软件设计为MVC结构。
模型层是进行数据库访问,并且封装对象,这一层中也存放在访问数据库取出信息封装成对象的类也就是实体类的信息,我们使用JDBC实现这一层的功能;控制层用来控制请求的响应和调用写好的相应的访问数据库的方法,我们现在用Servlet来实现这一层,并使用反射机制按照当前请求选择不同的业务;表现层用来显示数据和收集必要数据,我们现在用JSP来实现这一层,且通过JavaScript验证收集的数据是否正确。
数据库和服务器我们使用的是Mysql与Tomcat。
1.2开发环境与工具介绍
Myeclipse:
企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。
Tomcat6.0:
Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行。
Mysql:
MySQL是一个小型关系型数据库管理系统,MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
这样就增加了速度并提高了灵活性。
1.2.1HTML简介
HTML(HypertextMarkupLanguage),是用于描述网页文档的一种标记语言。
HTML是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。
网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:
文字如何处理,画面如何安排,图片如何显示等)。
浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。
但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。
HTML之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。
所谓超级链接,就是一种URL指针,通过激活(点击)它,可使浏览器方便地获取新的网页。
这也是HTML获得广泛应用的最重要的原因之一。
1.2.2JSP技术
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。
目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP
迅速成为商业应用的服务器端言。
2.可行性研究
2.1技术可行性
本系统仅需要一台装有Office软件的计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。
对于软件技术要求,现在的程序设计语言已非常成熟,要运用HTML样式,图形图象制作工具来制作生动活泼的网页及美观的图形文件或动画文件。
2.2经济可行性
由于本系统是为学生学习使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。
所带来的效益远远大于系统软件的开发成本。
在经济上完全可行。
2.3操作可行性
界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。
3.系统需求分析
3.1用户需求分析
3.1.1用户需求
能够方便的浏览查询图书,方便的购买图书。
3.1.2系统功能需求
根据用户对网上购物系统的需求,我们设计了此方案,更方便、快捷的满足用户的购书需求。
3.2系统E-R图
密码
用户名
管理员
管理
信息
销售管理
用户管理
查询
账户管理
4.系统设计
4.1数据库逻辑结构设计
逻辑结构设计阶段的任务是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。
4.1.1逻辑设计规范
数据库逻辑设计就是将E-R图转换成关系模型的过程,即将所有实体和关系转换成一系列的关系模式,转换过程中常见规则有:
(1)一个实体型转换成一个关系模式。
(2)一个一对一的关系模型可转换成一个独立的关系模式,也可与任意一端对应的关系模式合并。
(3)一个一对多的联系可以转换成一个独立的关系模式,也可与多的那一端对应的关系模式合并。
(4)一个多对多的联系可以转换成一个关系模式。
4.1.2E-R图与关系模式的转换
图书类:
(Id,图书名,ISBN号,价格,图片路径,描述,图书分类号,库存量,折扣,出版社号,作者名)
用户类:
(Id,用户名,密码,电子邮箱,性别,帐户余额,积分,注册时间,)
订单类:
(Id,用户号,价格,收货信息号,支付方式号,订单状态号,订单日期,送货方式号)
出版社类:
(Id,出版社名称,出版社地址,出版社电话)
支付方式类:
(Id,支付方式名)
送货方式类:
(Id,送货方式名)
用户等级类:
(Id,等级名称,等级最低积分,等级最高积分,等级折扣)
订单状态类:
(Id,订单状态名)
订单详细类:
(Id,对应订单号,图书号,购买数量)
用户收藏类:
(Id,图书号,用户号)
收货信息表:
(Id,用户号,收货地址,邮编,收件人电话,收件人姓名)
评论类:
(Id,评论内容,图书号,用户号,评论日期)
图书分类表:
(Id,图书分类名)
4.1.3逻辑结构表
本系统采用MySQL作为数据库。
在数据库中建立名为bookshop的数据库,其中包含有。
下面是每个数据库表中的属性,包括属性列的名称、数据类型、长度、是否为空和备注说明等内容。
图书信息表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
name
varchar
20
否
price
double
0
否
amount
int
11
是
discount
double
0
是
pic
varchar
50
是
press_id
int
11
否
外键
description
varchar
1000
是
图书分类表:
名
类型
长度
允许为空?
备注
id
int
11
否
主键
name
varchar
20
否
评论表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
content
Varchar
200
否
book_id
bigint
20
否
外键
user_id
bigint
20
否
外键
comment_date
date
0
是
收货地址表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
user_id
bigint
20
否
外键
address
varchar
100
否
post
varchar
6
否
phone
varchar
11
否
receiver
varchar
20
否
送货方式表:
名
类型
长度
允许为空?
备注
id
int
11
否
主键
name
varchar
30
否
收藏表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
book_id
bigint
20
否
外键
user_id
bigint
20
否
外键
点单表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
user_id
bigint
20
否
外键
price
double
0
否
contact_id
bigint
20
否
外键
payment_id
int
11
否
外键
status_id
int
11
否
外键
order_date
date
0
否
delivery_id
int
11
否
外键
点单详细表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
order_id
bigint
20
否
外键
book_id
bigint
20
否
外键
amount
int
11
否
点单状态表:
名
类型
长度
允许为空?
备注
id
int
11
否
主键
name
varchar
10
否
付款方式表:
名
类型
长度
允许为空?
备注
id
int
11
否
主键
name
varchar
10
否
出版社信息表:
名
类型
长度
允许为空?
备注
id
int
11
否
主键
name
varchar
30
否
address
varchar
40
否
phone
varchar
11
否
用户信息表:
名
类型
长度
允许为空?
备注
id
bigint
20
否
主键
username
varchar
20
否
password
varchar
12
否
varchar
20
是
sex
varchar
1
否
balance
double
0
是
score
int
11
否
regist_date
date
0
是
用户等级表:
名
类型
长度
允许为空?
备注
id
int
11
否
主键
name
varchar
10
否
score_low
int
11
否
score_high
int
11
否
discount
double
0
是
4.2功能模块图及分模块功能描述
4.2.1系统的功能模块图
网上商店
用户
管理员
注册会员
网上购物
用户管理
仓库管理
销售管理
商品管理
商品搜索
4.2.2系统功能模块简介
系统采用了敏捷开发的思想,对整个系统分成了3个大模块:
前台交易模块、数据库及持久层的设计、后台管理模块。
各个模块又进行了一步的细分,如前台交易模块又分为查询、购买、收藏等;数据库采用了Mysql,使得系统具有易用性、个性化、跨平台等特点;同时又保证交易数据的安全、稳定、快速和完整;使其运行得高速、安全、稳定。
5.系统实施
5.1建立数据库
在Mysql中创建数据库:
Createdatabaseebookshop;
5.2数据库连接
将连接数据库的代码封装在类中:
publicstaticConnectiongetConnection(){
Connectionconn=null;
StringdriverClassName="com.mysql.jdbc.Driver";
Stringurl="jdbc:
mysql:
//localhost:
3306/ebookshop";
Stringuser=用户名;
Stringpassword=密码;
try{
Class.forName(driverClassName);
conn=DriverManager.getConnection(url,user,password);
}catch(Exceptione){
e.printStackTrace();
}
returnconn;
}
publicstaticvoidclose(Connectionconn){
if(conn!
=null){
try{
conn.close();
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
5.3主要模块实施
5.3.1登录模块的开发
登录模块主要是实现用户的登录操作。
登录模块的外部逻辑放在loginform.jsp中,整个流程如下所示:
5.3.2注册模块
该模块主要提供一般读者的注册操作,在注册操作过程中涉及到用户名重复的判断,该功能由regist.jsp提供。
在录入用户注册信息时,对用户填写的信息要进行一些判断,这些判断的原理都是利用一些正则表达式来对用户输入的信息进行过滤
5.3.3顾客浏览图书模块
该模块的实现较为简单,主要是通过调用jdbc查询数据库获取ResultSet对象,之后遍历这个对象,将需要的字段显示到页面即可。
对数据库的查询也非常简单,主要的原理就是通过一条如下所示的Sql语句来实现查询操作,需要注意的是用limit实现分页功能。
5.3.4搜索图书模块
上面两图分别为按图书、作者来查询。
该模块提供三种搜索方法使读者能够灵活的搜索到自己想要的书籍,分别是按书名搜索、按作者名搜索、按出版社搜索,同时在还提供了模糊匹配的功能。
该模块通过询数据库获取ResultSet对象,之后遍历这个对象,在搜索页面显示即可。
SQL语句:
select*fromt_bookwheretypelike%search%limit(page-1)*10,10;
如上所示,搜索的条件type可以是图书的名称或者图书名称的一部分,也可以是图书的出版社或者作者名,这些搜索都实现了模糊匹配。
5.3.5图书分类显示模块的开发
图书分类显示功能,根据图书的sortid找出同一类别的图书,显示出来。
5.3.6购物车管理模块的开发
购物车管理主要实现读者添加图书到购物车或者是将图书从购物车中删除,购物车同时实现了图书总价的统计功能。
用户可以直接修改购物车中已有图书的数量,确定修改后经一系列操作仍然跳转到当前页面,并将图书总价显示出来。
5.3.7生成订单模块的开发
5.3.8订单管理模块的开发
5.3.9图书收藏模块的开发
5.3.10用户信息模块的开发
5.4系统测试
5.4.1软件测试的对象
为了保证测试的质量,将测试过程分成几个阶段,即:
代码审查、单元测试、集成测试、确认测试和系统测试。
(1)单元测试
单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。
(2)集成测试
集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。
如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。
(3)确认测试
确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。
经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。
(4)系统测试
软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。
包括恢复测试、安全测试、强度测试和性能测试等。
5.4.2软件测试的结果
经过上述的测试过程对软件进行测试后,软件基本满足开发的要求.
6.系统说明
6.1开发环境
本系统的是在Myeclipse平台下开发的,系统的后台数据库为Mysql,采用tomcat6为服务器;因此在使用本系统前,应先安装Myeclipse和Mysql数据库,下载tomcat,否则该系统无法运行。
6.2系统安装与配置
系统的原文件直接复制到机器上后,在数据库管理系统上建立一个名为Design的数据库后,系统便可以运行。
总结
该系统完成了网上书店的基本功能,通过完成该系统,我们对JSP水平得到了很大的提高,另外也对软件工程的知识进行了巩固,在整个项目中贯穿着软件工程方方面面的思想。
通过本系统设计与开发,从而得出下列结论:
(1)学习一门新技术,最重要的是实践,只有多动手才能尽快掌握它。
(2)一个系统的开发,经验是最重要的,经验不足,就难免会有许多考虑不周之处。
(3)要想吸引更多的用户,系统的界面必须要美观、有特色、友好,功能要健全。
不过由于经验不足,我设计的图形界面比较简单。
只是对基本功能进行了开发。
(4)本次开发,我们参考了很多本系统的例子,吸取了一些别的本系统的长处,对自己的设计进行了完善,但是还有很多的不足之处,有待以后进一步学习。
参考文献
[1]徐爱鸣.网上书店的设计与实现[D].上海:
同济大学,2007。
[2]BruceEckel.《JAVA编程思想》.机械工业出版社,2003年10月。
[3]赛奎春.《JAVA工程应用与项目实践》.机械工业出版社,2002年8月。
[4]萨师煊,王珊.《数据库系统概论》.高等教育出版社,2002年2月。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 毕业论文 网上 书店 系统