在线书店系统文档.docx
- 文档编号:12844617
- 上传时间:2023-06-08
- 格式:DOCX
- 页数:39
- 大小:2.20MB
在线书店系统文档.docx
《在线书店系统文档.docx》由会员分享,可在线阅读,更多相关《在线书店系统文档.docx(39页珍藏版)》请在冰点文库上搜索。
在线书店系统文档
编号
软件工程与计算II课程设计报告
题目在线书店系统
二级学院计算机科学与工程学院
专业软件工程
班级111030806
学生姓名张凯强学号11103080635
学生姓名褚方彬学号11103080607
学生姓名唐扬学号11103080621
指导教师李刚
时间2013.6.24——2013.7.12
目录
1绪论4
1.1课题研究的背景和意义4
1.2在线书店系统的现状分析4
1.3本文内容与结构4
2关键技术5
2.1关键技术概述5
2.1.1JSP简介5
2.1.2MyEclipse简介5
2.1.3DreamweaverCS4简介6
3系统需求分析9
3.1需求概述9
3.2主要基本流程11
3.3图书管理需求分析13
3.3.1需求描述13
3.4用户管理需求分析14
3.4.1需求描述14
3.5订单管理需求分析14
3.5.1需求描述14
3.6评价管理需求分析14
3.6.1需求描述14
3.7其他非功能需求分析14
3.7.1性能需求14
3.7.2软硬件需求15
4系统设计16
4.1设计概述16
4.2系统架构设计16
4.3数据库设计16
4.3.1概念结构设计16
4.3.2逻辑结构设计19
4.3.3物理结构设计20
4.4.1类的分析与设计21
4.4.2界面设计22
4.4.3数据库表设计24
4.4.4其他关键功能设计27
5系统实现28
5.1系统开发环境28
5.2系统中所存在的问题及解决方案28
5.2.1系统的整体设计和规划中的问题28
5.2.2开发功能模块所遇到的难点28
5.2.3系统中存在的问题及拟定的解决方法29
5.2其他关键功能的实现30
5.3.1后台管理员系统的实现30
6系统测试与效果评估32
6.1系统测试总体概述32
6.2测试设计32
7总结35
8致谢词36
参考文献37
摘要
伴随着电子商务技术的不断成熟,电子商务的功能也越来越强大,注册用户可以在网上搜索购买到自己想要的各种书籍,初步让人们体会到了足不出户,便可随意购物的快感。
网上购物系统是一种具有交互功能的商业信息系统,它向用户提供静态和动态两类信息资源。
本文以SQLServer为数据库开发平台,以Tomcat网络信息服务作为应用服务器,采用基于服务器端的JSP,以及网页编程语言HTML,构建了一个小型动态商务网站——在线书店系统。
该系统能实现用户的注册、登录功能;能够实现图书的查询,订购等功能,基本上具备一个网上书籍销售系统应具备的功能,可以说,目前的大型商务网站也就是这个小型网站在内容上的扩充和重复。
而且JSP基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势,而且它在多方面加速了动态Web页面的开发,譬如,将内容的生成和显示进行分离;强调可重用的、跨平台的组件来执行应用程序所要求的更为复杂的处理;采用标识简化页面开发;Java语言拥有“一次编写,各处运行”的特点等。
在线书店,可以为各类用户提供方便的在线买书环境。
用户可以在系统中实现注册、浏览书籍、搜索查询书籍、处理订单等功能;管理员可以通过用户管理、订单管理、图书管来对系统进行维护更新。
为了实现这个系统,需要创建数据库,在在运行程序时,需要多次连接数据库,而且这种连接是一项很消耗资源的操作。
本文所设计的在线书店系统基本完成了要求的各项基本功能,但也有一些不完善和亟待改进之处,如安全性能还不完善,缺少必要的数据加密系统等,这些功能与技术将另文讨论。
在线书店系统无论是在开发过程中,还是建成后的日常维护过程中,都需要进行严格的检测,以保证书店系统的服务质量。
随着在线书店系统技术的日趋成熟,在线书店的优势日趋明显,会有更多的人参与到网上购书的浪潮中来。
关键词:
JSP;Tomcat;SQLServer;在线书店系统
1绪论
1.1课题研究的背景和意义
在线书店系统,顾名思义,就是在网上所呈现的一种虚拟的类似于现实世界的书店的一种系统。
是一种新的购书方式,在线书店系统不仅可用于图书的在线销售,也有音碟、影碟的在线销售。
而且在线书店系统对图书的管理更加合理化,信息化。
售书的同时还具有书籍类书籍管理、购物车、订单管理、会员管理等功能,非常灵活的网站内容和文章管理功能。
1.2在线书店系统的现状分析
就在线书店系统而言,由于网络已经覆盖全球,信息量大所以独具优势。
售书的理念就是读者可以自己寻找自己喜爱的书为替读者找寻他们想要的书。
对于读者来说,网上书店近在咫尺,并且永不下班关门,读者可以随时随地自由地查询和订购图书,读者无需亲临书店,一档一档地找,一本一本地翻,只要坐在电脑前,开机上网即可买到所需书籍,而且读者的挑选余地也大多了,检索也很方便,同时还减少了购书过程中的支出网上购书节省了大量时间,这对于那些没有时间经常逛传统书店或其住所离传统书店较远的读者来说,具有实际意义。
因此网上售书必将有长足的发展。
本系统的主要目的是实现图书的在线销售,包括管理库房中的图书,以及管理用户的购物车,从而实现结帐等一系列功能,让用户足不出户就能够在在线书店系统购买到自己所需的图书。
在线书店系统的优势:
涉及品种范围广,客户遍及网络覆盖区域,经营成本低,折扣价格偏低,信息传播速度快。
在线书店系统的缺点:
不可翻看或部分翻看,有问题退换难,受网络限制,不愿网购或无网购经验人群无法涉及。
1.3本文内容与结构
本文分六大部分论述:
第一章节绪论部分主要阐述的是课题背景、以及对在线书店的剖析,主要为读者从宏观的角度了解课题本身,方便读者扩展阅读;第二章节理论基础,主要内容是关键技术点;第三、四、五、六部分按照软件开发的一般流程,需求分析、系统设计、系统实现、测试实例,为读者详细展示系统的各个层面。
2关键技术
2.1关键技术概述
2.1.1JSP简介
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迅速成为商业应用的服务器端语言。
JSP可用一种简单易懂的等式表示为:
HTML+Java=JSP。
2.1.2MyEclipse简介
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。
MyEclipse10.0是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
MyEclipse10.0更智能、更快捷、更简单和更便宜的J2EE工具的新版本的诞生。
它的价格对于个人和企业开发人员来说都是非常有吸引力的。
这是J2EEIDE市场一个重量级的选手。
通过增加UML双向建模工具、WYSIWYG的JSP/Strutsdesigner、可视化的Hibernate/ORM工具、Spring和Webservices支持,以及新的Oracle数据库开发,MyEclipse10.0继续为业界提供全面的产品。
2.1.3DreamweaverCS4简介
DreamweaverCS4是专业可视化网页开发工具,它与另外两个网页制作软件Flash、Fireworks并称为“网页三剑客”。
其中Flash用来制作网页矢量动画,fireworks用来制作网页图像,而Dreamweaver用来编辑排版网页。
在DreamweaverCS4中,可以不用手工编写HTML代码,而是自动产生各种HTML代码。
DreamweaverCS4还提供了功能全面的编码环境,其中包括代码编辑工具,以及有关HTML、层叠样式表(CSS)、JavaScript、ColdFusion标记语言、ASP和JSP的参考资料。
2.1.4SQLServer简介
SQLServer是一个关系数据库管理系统。
它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。
在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本。
Sybase则较专注于SQLServer在UNⅨ操作系统上的应用。
MicrosoftSQLServer2005是一个全面的数据库平台,使用集成的商业智能工具提供了企业级的数据管理。
MicrosoftSQLServer2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
2.1.5CSS简介
CSS语法结构仅仅由三部分组成:
选择符(Selector)、属性(property)和值(Value)[6]。
其说明如下:
(1)选择符
指这组样式编码所要针对的对象,可以是XHTML标签,如body,h1;也可以是指定了特定id与class的标签,如#main选择符表示选择
(2)属性
属性是CSS样式控制的核心,对于每一个XHTML中的标签,CSS都提供了丰富的样式属性,如:
颜色、大小、定位、浮动方式等。
(3)值
值是指属性的值,形式有两种,一种是指定范围的值,如float属性,只能应用left,right,none三种值;另一种如:
width能够使用0~9999px或其他的数学单位来指定。
2.1.6JDBC技术简介
1.JDBC概述
jdbc是一种可用于执行SQL语句的JAVAAPI,由一些JAVA编写的类和界面组成。
JDBC为数据库应用人员和数据库前台工具开发人员开发了一种标准的接口,使开发人员可以用存JAVA语言编写完整的数据库应用程序.
2.JDBCDRIVER的四种驱动
(1)jdbcodbc桥(bridge)
过程:
Java->jdbc-odbc桥->odbc->厂商的db源码->数据库server
特点:
a、可以实现java和odbc的交互
b、必须通过jdbc-odbc桥和odbc衔接后才可以和数据库建立通信,。
。
效率低
c、必须在客户端安装odbcjriver,由于无法在网络中要求所有用户安装odbc驱动,因此不适合在internet中应用。
d、适合实验。
不适合项目。
(2)部分java实现的本地API驱动
过程:
java->本地API驱动->数据库server
特点:
不需要有复杂的中间过程就可以和数据库建立通信,在效率上相对与第一驱动功能有显著的提高。
必须要求客户端下载本地API驱动程序才能保证和数据库的通信,通用性不好,也不合适在internet上应用。
(3)纯java实现的网络驱动:
type3数据库频繁切换时用
过程:
java->网络协议驱动->中间件服务器(可以和多种数据库进行交互,功能庞大)->数据库server
特点:
a、由于大部的功能都是由中间件服务器来实现,因此网络协议驱动下的下载及安装十分的方便,从而相对前两种驱动提了效率
b、由于中间件服务器提供多种数据库的交互支持,因此适合要求和多种数据库连接的应用程序使用。
c、设计思想来源于分层的开发,任务分明,保持良好的低耦合度。
d、有中间服务器的转换过程,因此效率不是最高的一种驱动。
(4)纯java实现的本地协议驱动:
type4
过程:
java--》本地驱动————》数据库server
特点:
a、由于几乎没有和中间件交互过程,效率很高。
b、驱动和应用程序容为一体,只需要下载就可以使用方便
c、适合应用程序始终谅解一种数据库的要求。
3系统需求分析
3.1需求概述
需求分析在软件开发中占有很重要的地位,甚至可以说,它决定了整个项目的成败。
首先要进行需求调研,了解用户的相关情况,如社交平台所面向的主要用户群体,以及用户的使用习惯。
了解和分析市场上同类产品的各个功能模块和交互模式以确定用户需求。
其次就要开始编写需求文档,列出各个功能模块和各个大模块下的子模块,并可以对界面进行简单的设计,与用户进行多次沟通后以最终确定需求。
通过仔细分析和调研,得到如下的系统功能模块设计图:
图3-1系统功能模块设计图
图3-1中涉及的主要角色如下:
1.用户:
为在线书店系统的主要使用者,可以在线浏览书籍,搜索图书,分为两种类型。
一是游客用户,在浏览书籍并进行购书的同时,会有注册的提示。
第二种是已经注册的用户,在登录之后,注册用户有权限查看和修改自己的个人信息。
注册用户还可以将自己想要拥有的图书放入购物车中,同时也可以管理自己的购物车,查看自己的订单并对订单进行管理。
2.系统管理员:
为在线书店系统的管理人员。
管理员登录后,可以查看和管理用户的订单,也能够查看用户的信息。
管理员可以对书籍的分类、销售信息、评价、销量和价格进行修改,同时也可以添加新的图书。
登录之后,管理员也可以修改自己的个人信息。
图3-1主要用例描述如下:
1.浏览书籍
浏览书籍是指用户在进入在线书店系统时,首先进入的是系统网站的首页,首页中有很多图书可以浏览,包括图书畅销榜,新书畅销榜,主编推荐,新书上架,以及持续热销榜区域。
用户可以随意浏览这些区域中的任意书籍。
2.查找图书
查找图书是指用户进入首页后,在搜索栏可以搜索自己想要浏览或者想要购买的书籍,就可以查找到自己想要看的图书。
3.游客注册
游客注册是指游客用户在进行购书时,会有一定的提示,游客用户需要注册同时注册必须成功才能购买自己想要购买的图书。
一旦注册成功后,用户就有权查看和修改自己的个人信息。
4.在线购书
在线购书是指注册用户在进行登录后,点击想要购买的书籍,进入购书页面,然后加入购物车,最后提交订单,付款后,在线购书成功。
5.购物车管理
购物车管理是指注册用户在登录后,就可以点击进入管理界面,在管理界面可以对购物车以及购物车里的书籍进行管理。
6.订单管理
订单管理是指注册用户在登录成功后,进入自己的管理界面,在管理界面中就可以对自己已经成功提交的或者订单的其他方面进行管理,管理也包括对订单的修改、删除等等。
7.管理员修改书籍信息
管理员通过后台登录。
在登录成功后,管理员可以对书籍信息进行检查,及时更新书籍的信息以及修改一系列错误的信息等等。
8.管理员添加书籍
管理员通过后台登录。
在登录成功后,管理员可以在后台添加一些其他的新的书籍,同时添加书籍的一些附属信息,比如:
书籍的定价,作者简介,目录,书籍简介等等。
9.管理员管理销售订单
管理员通过后台登录。
在登录成功后,管理员可以查看用户已经成功提交的订单,同时管理员可以对这些销售订单进行进一步的管理,从而确认发货信息。
10.管理员修改书籍分类
管理员通过后台登录。
在登录成功后,管理员可以查看已经分类完成的书籍,管理员也可以将这些书籍的分类信息进行修改。
11.管理员查看用户信息
管理员通过后台登录。
在登录成功后,管理员有权在后台查看所有用户的信息,维护用户注册或修改成功的信息。
12.评价图书
评价图书是指用户在浏览书籍或者购买书籍的过程中对商家有意见或者建议,在评价模块对书籍或者其他方面进行留言。
3.2主要基本流程
经过分析和业务调查研究出系统的整体业务流程如图3-2所示,图中详细描述了用户和管理员在社交平台中的所涉及的业务。
图3-2-1用户基本流程图
图3-2-1主要针对用户的一些操作流程:
(1)游客用户需要先进行网站注册,然后进行用户登录。
注册用户直接登录即可。
(2)用户登录后,可以浏览网站上的各种书籍,如果有需要,便可按需下订单购买书籍。
(3)用户在浏览书籍或者购买书籍的过程中对商家有意见或者建议的,可以在评价模块对其进行评价。
图3-2-2主要基本流程图
图3-2-2主要针对管理员的一些操作流程:
(1)当管理员登录成功后,便可查看所有用户信息,维护用户注册或修改成功的信息。
(2)管理员可以对图书信息进行管理,包括图书的详细信息、图书的更新等。
(3)管理员能够查看用户提交的订单,从而确认发货信息。
(4)管理员能够查看用户的评价信息,以便得到更多意见,提供更好的服务。
3.3图书管理需求分析
3.3.1需求描述
图书管理包含四个部分。
第一,管理员可以通过登录后在后台来查看在线书籍的信息。
第二,对书籍信息的修改。
管理员在后台对书籍信进行检查,发现错误信息或字眼时,及时进行修改。
第三,对书籍进行添加。
管理员对书籍要进行及时的添加,让用户可以更快的知道有哪些新的书籍的上架。
第四,对一些书籍进行删除。
管理员在了解了一定的信息后,对一些已经下架了的图书进行选择性的删除,从而做到对书籍的推陈出新。
图书管理模块负责管理本系统所有销售书籍信息。
主要功能包括添加、删除、修改以及查找信息,并且包括书籍高级查询子模块,该模块将在下面介绍。
只有管理员才具有对书籍信息进行修改的权利,书籍管理是网上书店系统的核心,网上书店对书籍价格的调整以及新书的添加等都将在这部分完成。
3.4用户管理需求分析
3.4.1需求描述
用户管理模块负责管理所有在线书店系统的使用者信息。
主要功能包括添加、删除、修改以及查找使用者信息。
管理员和用户有着不同的管理范围。
用户可以修改和维护自己的私有的信息。
而管理员可以查看所有用户信息,维护用户注册信息,但是修改不了用户注册成功或修改成功的信息,只能对自己的个人信息进行管理。
3.5订单管理需求分析
3.5.1需求描述
订单是指用户浏览在线书店进行书籍的挑选并发出订货的单子。
系统提供在一定的时间范围内即在注册用户订单提交至后台管理员还未对订单进行确认操作这段时间内,允许用户自行修改、取消自己的订单等订单管理相关操作。
系统管理员可以在后台查看用户已经成功提交的订单,从而确认发货信息。
3.6评价管理需求分析
3.6.1需求描述
评价是指用户在浏览书籍或者购买书籍的过程中对商家提出的意见或者建议。
管理员在登录成功后,能够在后台查看用户的评价。
同时管理员也可以对用户的评价进行管理,以便得到更多意见,提供更好的服务。
管理员在后台还能够删除用户对书籍的一些评价。
3.7其他非功能需求分析
3.7.1性能需求
性能需求在系统需求中占有非常重要的地位,一个性能极差的系统对于用户来说是不可用的。
对于本系统,性能需求主要包括以下几点:
1.针对性:
该平台设计是在线书店系统及后台管理的定向开发设计,所以具有专业突出和很强的针对性。
2.实用性:
该平台能完成书籍展示和管理员管理的基本信息,具有良好的实用性。
3.简单性:
在实现系统的功能的同时,尽量让系统操作简单易懂,这对于一个网站来说是非常重要的。
4.易用性。
这是系统首先需要满足的要求,一个具有良好易用性的系统可以极大的降低系统前期用户培训的成本,同时可以极大的提升用户体验。
5.可维护性。
系统维护是软件生命周期中必须经历的阶段,因此,系统必须是可维护的。
一个维护性很差的系统对于后期的系统维护人员来说,将是一场灾难。
系统可维护性的底线在于,系统维护的成本必须小于系统重新开发的成本,不然,这个系统必将是失败的。
6.可扩展性。
系统升级是一个十分必要的过程,系统在后期必须满足能够十分方便的添加新功能。
因此,系统必须具有良好的可扩展性。
3.7.2软硬件需求
(1)软件工具:
Windows7/XP操作系统,
Dreamweaver软件,
MyEclipse软件,
数据服务层使用的是MySQL数据库。
(2)硬件平台:
Intel/奔腾处理器的个人计算机(内存1G)。
4系统设计
4.1设计概述
系统设计来源于需求,首先对系统总体架构和数据库进行设计,然后再对各个功能需求进行详细设计。
同时采用MVC模式使得系统满足性能方面的需求,系统还重点对前端交互进行了详细设计使得系统交互变得更加友好和易用。
4.2系统架构设计
MVC是一种十分常见的设计模式。
该模式将一个应用分为三层,即视图层、模型层和控制器层。
每一层之间相互独立,可以大大提高系统的可维护性和可扩展性。
在本系统中,选用一个超轻量级的开源PHP框架,BroPhp框架实现系统的MVC模式。
首先是视图层。
视图层负责处理用户的输入和向用户展示数据结果。
该层采用Smary实现。
其次是模型层。
模型层封装的是具体的业务逻辑,其处理流程对于其他层来说是不可见的。
编程最麻烦的就是大量的写增、删、改、查,因此,BroPhp框架将基础的数据库操作封装到了DB类中,极大地提高了编程的便利性。
同时,用户还可以编写自己的Model类对DB类进行扩展。
最后是控制器层。
控制器层是连接模型层和视图层的桥梁,控制器层层接收视图层传来的数据并调用相应的模型层处理并返回结果。
该层采用BroPhp框架封装的action类实现。
4.3数据库设计
4.3.1概念结构设计
在需求分析阶段我们对需求进行了分析和总结。
在进行设计时,需要将其转化为现实信息世界的模型,而概念结构正好能够满足这个要求。
概念模型能够十分真实的反应现实世界,以及各种事物之间的联系,这对于数据库设计是十分关键的。
而描述概念模型的有力工具是E-R模型,E-R模型由实体、属性、联系三部分组成,其符号如图4-1所示:
图4-1E-R模型符号说明
下面是各个实体图:
图4-2描述了用户实体图:
图4-2用户实体图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 在线 书店 系统 文档
![提示](https://static.bingdoc.com/images/bang_tan.gif)