版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 . . . 本科毕业设计(论文)基于B/S模式的网上书店的设计与实现基于B/S模式的网上书店的设计与实现摘 要近年来,随着信息的全球化和国际互联网的普与化。商业的运行模式和人们的消费观念也随之改变。电子商务已经成为一种时尚。图书信息易于判断和选择,所以适合于网上交易,因而“网上书店”成了电子商务的先锋。网上书店又名电子书店、网络书店、虚拟书店,其涵都一样,都是利用信息技术、数字技术、虚拟技术、网络技术在互联网或因特网上进行图书贸易的一种新型书店,是图书的另一个新型市场。网上书店的出现使人们足不出户就可以买到自己需要的图书,从而打破了传统书店的经营模式。本系统的开发主要包括前台应用程序的开发和
2、后台数据库的建立和维护两个方面。前者要求应用程序具有功能完备、易用等特点,后者要求建立数据的一致性和完整性。基于上述考虑本系统采用B/S模式架构,利用JSP作为前台应用程序的开发工具,利用SQL Server 2000作为后台数据库的建立和维护工具,选择Windows XP作为系统平台,选择Tomcat作为服务器。本系统的主要特点是:操作简便,平台适应性广,在上的运行速度较快。关键词网上书店;购物车;B/S模式1 / 82AbstractIn recent years,along with the information globalization and the Internet unive
3、rsalization, the commercial operation model and the peoples thought about consuming have changed a lot,and the electronic commerce has become a king of fashion.As the information of books is easy to judge and choose,it fits the transaction on-line,and it is a new kind of bookstore in which people ha
4、ve book trade on the Internet with information technology,digital technology,virtual technology,net technology,its a kind of new market for the book publishing.The appearance of on-line bookstore let people get what they need without walking out of the house. So that it breaks the mode of traditiona
5、l bookstores.The development of this system mainly includes the two sides of the development of proscenium application program and the foundation and repair of database in the background.To the first one,we need a full function and easy using program,to the second one,the consistence and the complet
6、eness of data is needed to build up,Based on the consideration above, our system adopts B/S model, using JSP as the proscenium developing tools,using SQL Server 2000 as backstage database tools, choosing Windows XP as the system platform,choosing Tomcat as the server.The main character of this websi
7、te is that convenient cooperating,extensive adoptions of platform,and has a fast running speed.KeywordsOn-line bookstore;shop car;B/S(Browser/Server)mode目 录摘要IAbstractII第1章绪论11.1 课题背景11.2 选题意义11.3 国外状况和发展趋势31.4 论文主要工作31.5 论文结构4第2章基础知识52.1 数据库理论基础52.1.1 数据库系统设计原则52.1.2 SQL语言简介62.1.3 SQL语句介绍82.2 系统开发工
8、具102.2.1 JSP技术介绍102.2.2 JSP在Web开发方面的优势122.2.2 SQL Server简述132.1.4 Eclipse与MyEclipse简述132.3 本章小结15第3章系统分析163.1 功能性需求分析163.2 非功能性需求分析173.3 系统用例分析183.4 本章小结20第4章系统设计214.1 系统操作流程214.1.1 会员操作流程214.1.2 管理员操作流程214.2 数据库设计与实现214.2.1 数据表结构214.2.2 数据表关系图254.2.3 连接数据库254.3 系统主要功能模块设计264.3.1 登录/注册模块264.3.2 购物车模
9、块264.3.3 图书管理模块284.3.4 用户管理模块294.4 本章小结30第5章系统总体实现315.1 总体构建315.1.1 总体页面构架315.1.2 公用组件325.2 后台管理355.2.1 图书查询355.2.2 图书管理365.2.3 出版商和图书类别管理385.2.4 会员等级设定395.3 前台用户操作405.3.1 购物车405.3.2 图书类别查看415.3.3 图书查询425.3.4 热点图书和推荐图书445.3.5 读者反馈445.4 本章小结46结论47参考文献48致50附录1开题报告51附录2 文献综述55附录3 中期报告59附录4 外文文献63附录5 中文
10、译文72第1章 绪论1.1 课题背景仅仅20年前,还是大型机的时代,那时只有少数人有机会使用计算机,而且只能通过临近的信息产业机构去使用。然而,个人电脑和图形化用户界面的出现却改变了这一切,将计算机普与到了干家万户,并使它真正成为一种大工业生产的商品。企业界意识到,由个人电脑联结起来组成的网络和基于个人电脑的服务器可能改变他们的商务模式。而个人电脑对消费者来说也迅速成为新兴的娱乐媒介。随后,因特网接踵而至并在全球围以一种不可阻挡的势头迅猛发展着,今天,全球有将近3亿人口正在使用因特网,据预测,全球上网人数将在3年增至8.5亿。在这样一个网络时代中,人类的生存方式也迅速改变着,它革命性地改变了我
11、们的交流方式,创造了丰富而新颖的信息和娱乐资源。“信息的DNA”正在取代原子而成为人类生活中的基本交换物。数字科技为我们的生活、工作、教育和娱乐带来了各种意想不到的冲击1。1.2 选题意义Internet正逐渐渗透入人们工作、生活中的各个角落。它在地球上已经形成了一个新的大陆,即“第七个洲”虚拟洲,任何企业和个人都在这个洲上。个人要生存,企业要发展,就必须采取新的生存方式、竞争手段去适应它。面对Internet本身所具有的开放性、全球性、低成本、高效率等特点,传统商业暴露的问题也越来越明显,原有的商业格局、商务运作模式在Internet面前也显得无能为力,客观形势给传统商务工作带来了压力和动力
12、、机遇和挑战、条件和可能,挑战是现实的,机遇是潜在的,所以迫使我们必须重组原有的商业格局,变革原有的商业模式来契合Internet的发展以取得最大的效益。但与此同时,相关的信息数据却急剧膨胀。这些海量的、以不同形式存储的数据资料,表面上杂乱无章且缺乏组织的规整化,但事实上却包含了许多潜在的、有价值的知识和规则,如何从这些海量的数据中发现有用的知识是知识工程研究面临的新课题。在中国,图书出版品种数量从1950年的1.2万增加到1998年的13万,平均年增长率为5.1;而图书总印数则由1950年的2.8亿册增加到1998年的72.6亿册,平均年增长率为7.0。图书发行量不断增加实际上也是读者对图书
13、的需求不断扩大的真实写照。无论哪个书店,能经销如此巨量的图书,都将是一个神话。然而,Internet的出现打破了这个神话,或者说是“网上书店”的出现打破了这个神话。说到网上书店,就不可能不提到亚马逊(Amazon.)全球最大的网络书店。它为读者提供了方便舒适的网上购物环境,丰富的图书品种(达310万以上),优惠的价格(折扣率从20到50),完善的金融结算制度,以与高效率的配送服务,并且实现了零库存运转。网上书店除了一般的电子商务功能外,还包括下列的几项服务2:(1)藏书最丰由于传统书店不论门市或仓储空间有限,往往在考量成本压力下只以所谓的畅销书为销售主体,对于读者的特殊需求或较为冷门的书籍则无
14、力顾与。但是数字化科技为这个困扰带来了解决的契机,以目前的技术,只需要很小的空间就可以储存大量的资料,并且能很快的搜寻到所需的信息,又可长期保存、修改也十分容易,当然可以提供读者各种图书咨询的满足。(2)方便检索在传统书店中要找一本书,除了要看店里的分类摆设是否适当之外,有时只好低声下气地麻烦店员帮忙,更惨的是常常还是找不到。而且这还是在你知道要找哪一本书的时候才发生,万一你只想找某依方面的数据,可能就会迷失在茫茫书海中了。但数字化的资料就不同了。有别于传统的方式,书为数据最大的好处在于它可利用建立索引文件,达到便利查询。如你不需要知道完整的信息,只需要输入部分的关键词或讯息,就可以快速地查到
15、所需的信息。(3)书籍的介绍与试阅书籍并不一定是一项冲动性购买的商品,对于多数的买书人而言,除非原本即有所求而来购买特定的书籍,多数时候是把买书这一回事当作是休闲活动,在书店中先行翻阅,然后再视情况购买,因此,网上书店是否能提供完整的书籍介绍与部分容的试阅,对读者而言相当重要,而且是最好每一本书都有,而不是只针对特定促销的书籍。这些服务,对读者以与消费者而言是便捷有效的。1.3 国外状况和发展趋势自从1995年7月亚马逊书店成立,就在网页上声明“在网络上设立一家以客为尊的书店,方便顾客在线漫游,并尽可能提供最多元化的选择”从此之后,网络书店的经营可以说和其它网络零售商一样,逐渐进入电子商务发展
16、的阶段3。自1995年发展至今,大约经历了三个阶段:第一阶段:1995年1997年,期间着重在强调网络的新颖与方便;第二阶段:1998年1999年,网络商业的竞争渐趋白热化,消费者和商家均将注意力转向价格竞争,但自1999年底开始,敏感的业者隐约感觉到光是价格低廉已不足以说服消费者;第三阶段:2000年至今,价格仍是考虑因素之一,但消费者讲求的围扩大至涵盖货品样色的提供、产品品质的保证、网络的交易条件、送货与其它售后服务等,即全方位的购物经验。在中国,网上书店有着广阔的发展前景4,因为:在网络方面,早期用于电子商务的网络多为较封闭的,现在基本上都转向TCP/IP。绝大多数企业网络都用Inter
17、net的技术来构建,这为电子商务的发展提供了一个统一的平台。在软件方面,以IBM、HP为首的众多IT厂商纷纷推出自己的电子商务产品,有的还提出了“一揽子解决方案”。对于人们最关心的支付与安全问题,似乎都不成问题5。例如各种卡技术IC卡、智能卡、各种信用卡、电子现金卡等;各种安全技术防火墙、密钥管理、时戳业务、不可否认业务、公钥证书认证等6。在硬件方面,无论是企业或商家构建服务器,还是个人选择上网的PC,都有非常宽广的可选择的面,国计算机和网络发展速度非常迅猛,这是中国计算机网络发展的现实,也是发展电子商务、经营网上书店的基础。所以我认为网上书店在中国还是大有可为的。1.4 论文主要工作为了开发
18、出该应用系统,并且使系统能够真正达到“适用、够用、好用”的标准,在开发的过程中我对许多同类的容、功能进行了分析与对比,吸取了它们的可取之处,借鉴了一些经验,在此基础上发挥本系统的注重信息服务的特色,以信息为纽带把作者、书商、书店、读者紧密地联系起来。另外,在设计的过程中也尽可能使系统达到较为“人性化”的标准。1.5论文结构本文分为五个部分:第一部分介绍了网上书店的课题背景、选题意义、发展现状以与本文主要工作。第二部分介绍了网上书店管理系统所涉与的相关技术基础。第三部分对网上书店的系统进行需求分析,确定了系统设计重点,明确了设计思路。第四部分论述了所设计的网上书店系统。第五部分介绍了该网上书店系
19、统的实现。第2章 基础知识2.1 数据库理论基础2.1.1 数据库系统设计原则一个好的数据库产品不等于就有一个好的应用系统,然而如果不能设计一个合理的数据库模型,不仅会增加程序的编程和维护的难度,而且将会影响系统实际运行的性能。数据库设计是建立数据库与其应用系统的核心和基础,它要求对于指定的应用环境,构造出较优的数据库模式,建立起数据库应用系统,并使系统能有效地存储数据,满足用户的各种应用需求。一般按照规化的设计方法,常将数据库设计分为若干阶段7,8:(1)系统规划阶段主要是确定系统的名称、围;确定系统开发的目标功能和性能:确定系统所需的资源;估计系统开发的成本;确定系统实施计划与进度;分析估
20、算系统可能达到的效益;确定系统设计的原则和技术路线等。(2)需求分析阶段要在用户调查的基础上,通过分析,逐步明确用户对系统的需求,包括数据需求和围绕这些数据的业务处理需求。通过对组织、部门、企业等进行详细调查,在了解现行系统的概况、确定新系统功能的过程中,收集支持系统目标的基础数据与其处理方法。(3)概念设计阶段要产生反映系统各组织信息需求的数据库概念结构,即概念模型。概念模型必须具备丰富的语义表达能力、易于交流和理解、易于变动、易于向各种数据模型转换、易于从概念模型导出与DBMS有关的逻辑模型等特点。(4)逻辑设计阶段除了要把E-R图的实体和联系类型,转换成选定的DBMS支持的数据类型,还要
21、设计子模式并对模式进行评价,最后为了使模式适应信息的不同表示,需要优化模式9。(5)物理设计阶段主要任务是对数据库中数据在物理设备上的存放结构和存取方法进行设计。数据库物理结构依赖于给定的计算机系统,而且与具体选用的DBMS密切相关。物理设计常常包括某些操作约束,如响应时间与存储要求等。(6)系统实施阶段主要分为建立实际的数据库结构;装入试验数据对应用程序进行测试;装入实际数据建立实际数据库三个步骤。另外,在数据库的设计过程中还包括一些其它设计,如数据库的安全性、完整性、一致性和可恢复性等方亟的设计,不过,这些设计总是以牺牲效率为代价的,设计人员的任务就是要在效率和尽可能多的功能之间进行合理的
22、权衡。2.1.2SQL语言简介SQL全称是“结构化查询语言(Structured Query Language)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle,Sybase,Informix,SQLServer这些大型的数据库管理系统,还是像Visual Foxpro,PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言10。SQL的发展历程:在70年代初,
23、EECodd首先提出了关系模型。70年代中期,IBM公司在研制SYSTEM R关系数据库管理系统中研制了SQL语言,最早的SQL语言(叫 SEQUEL2)是在1976年11月的IBM Joumal of R&D上公布的11。1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2和SQL/DS数据库系统中也实现了SQL。1986年l0月,美国ANSI采用SQL作为关系数据库管理系统的标准语言(ANSI X3.135-1986),后为国际标准化组织(ISO)采纳为国际标准。1989年,美国ANSI采纳在ANSI X3.135-1989报告中定义了关系数据库管理系统的SQL标准语言,称为
24、ANSI SQL 89,该标准替代ANSI X3.135-1986版本。该标准为下列组织所采纳:(1)国际标准化组织(ISO),为ISO 9075-1989报告“Database Language SQL With Integrity Enhancement”。(2)美国联邦政府,发布在The Federal Information Processing Standard Publication(FIPS PUB)127。目前,所有主要的关系数据库管理系统支持某些形式的SQL语言,大部分数据库打算遵守ANSI SQL89标准。SQL的特点:SQL被广泛地采用正说明了它的优点。它使全部用户,包括
25、应用程序员、DBA管理员和终端用户受益非浅12。(1)非过程化语言SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集。所有SQL语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。SQL不要求用户指定对数据的存放方法,这种特性使用户更易集中精力于要得到的结果。所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知道表是否有索引,表有什么类型的索引。
26、(2)是统一的语言SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员与许多其它类型的终端用户。基本的SQL命令只需很少时间就能学会,最高级的命令在几天便可掌握。SQL为许多任务提供了命令,包括:查询数据;在表中插入、修改和删除记录;建立、修改和删除数据对象;控制对数据和数据对象的存取;保证数据库一致性和完整性。以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。(3)是所有关系数据库的公共语言由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个,所有用SQL编写的程序都
27、是可以移植的。2.1.3SQL语句介绍 (1)数据查询在众多的SQL命令中,SELECT语句应该算是使用最频繁的。SELECT语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。SELECT语句的语法格式如下:SELECT colunml ,colunm2,etc FROM tablename(表示可选项)(2)创建表格SQL语言中的CREATE TABLE语句被用来建立新的数据库表格.CREATE TABLE语句的使用格式如下:CREATE TABLE tablename(columnl data type,column2 data type, column3 data type
28、)(3)向表格中插入数据SQL语言使用INSERT语句向数据库表格中插入或添加新的数据行。INSERT语句的使用格式如下:INSERT INTO tablename(first_column,1ast_column)VALUES(first_value,last value)(4)更新记录SOL语言使用UPDATE语句更新或修改满足规定条件的现有记录。UPDATE语句的格式为:UPDATE tablenameSET columnname=newvalue ,nextcolumn=newvalue2WHERE columnname OPERATOR valueand|or column OPER
29、ATOR value(5)修改数据库表结构ALTER tablename(6)删除记录SQL语言使用DELETE语句删除数据库表格中的行或记录。DELETE语句的格式为:DELETE FROM tablenameWHERE columnname oPER ATOR valueand|or column OPERATOR value(7)删除数据库表格在SQL语言中使用DROP TABLE命令删除某个表格以与该表格中的所有记录。DROP TABLE命令的使用格式为:DROP TABLE tablename(8)DISTINCT的用法SELECT关键字支持用户查询数据表中指定字段的所有数据,但是这
30、样有时就会不可避免的出现重复信息。如果用户希望只查询那些具有不同记录值的信息的话,可以使用SQL语言的DISTINCT关键字。语法格式如下:SELECT DISllNCT columnnameFROM tablename(9)WHERE的用法除了选择具有不同记录值的记录之外,有时我们可能还会需要根据某些条件对数据库中的数据进行查询。语法格式如下:SELECT columnnameFROM tablenameWHERE condition(10)COUNT的用法除了SUM和AVG函数之外,COUNT函数是SQL语言中另一个较为常用的运算函数。COUNT函数可以用来计算数据表中指定字段所包含的记录
31、数目。语法格式为:SELECT COUNZ(columnname)FROM tablename(11)GROUPBY的用法下面我们来进一步看一下SQL语言中的集合函数。GROUP BY命令的语法格式为:SELECT columnnamel,SUM(columnname2)FROM tablenameGROUP BY columnnamel(12)HAVING的用法用户在使用SQL语言的过程中可能希望解决的一个问题就是对由SUM或其它集合函数运算结果的输出进行限制。这时我们就需要使用HAVING从句。语法格式为:SELECT columnnamel,SUM(columnname2)FROM ta
32、blenameGROUP BY columnname1HAVING(arithematic function condition)SQL语句集数据定义、数据操纵、数据管理的功能于一体,语言风格统一,可以独立完成数据库的全部操作,而且简洁,易学易用13。2.2 系统开发工具2.2.1 JSP技术介绍JSP的英文全称是Java Server Page,中文全称是Java服务器端语言。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。JSP技术能让Web开发员和网页设计员快速地开发出容易维护的动态Web主页。用JSP开
33、发的Web应用是跨平台的,即能在Linux下运行,也能在其它操作系统上运行14。JSP技术使用Java编程语言编写类XML的tags和seriptlets来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源(例如JavaBesns)的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP技术是Servlet技术的扩展。Servlet是Java技术对CGI编程的回答。Servlet程序在服务器端运行,动态地生成Web页面。与传统的CGI和许多其他类似CGI的技术相比,Java Ser
34、vlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资。Servlet具有以下优点15:(1)高效在传统的CGI中,每个请求都要启动一个新的进程,如果CGI程序本身的执行时间较短,启动进程所需要的开销很可能反而超过实际执行时间。而在Servlet中,每个请求由一个轻量级的Java线程处理(而不是重量级的操作系统进程)。在传统CGI中,如果有N个并发的对同一CGI程序的请求,则该CGI程序的代码在存中重复装载了N次;而对于Servlet,处理请求的是N个线程,只需要一份Servlet类代码。在性能优化方面,Servlet也比CGI有着更多的选择,比如缓冲以前的计算结果,保
35、持数据库连接的活动,等等。(2)方便Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置 头、处理Cookie、跟踪会话状态等。(3)功能强大在Servlet中,许多使用传统CGI程序很难完成的任务都可以轻松地完成。例如,Servlet能够直接和Web服务器交互,而普通的CGI程序不能。Servlet还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。(4)可移植性好Servlet用Java编写,Servlet API具有完善的标准。因此,为I-Planet Enterprise Server写的Servlet无需任何实质上的改动即可移植到A
36、pache、Microsoft IIS或者WebStar。几乎所有的主流服务器都直接或通过插件支持Servlet。(5)节省投资不仅有许多廉价甚至免费的Web服务器可供个人或小规模使用,而且对于现有的服务器,如果它不支持Servlet的话,要加上这部分功能也往往是免费的(或只需要极少的投资)。2.2.2 JSP在Web开发方面的优势现在的Web开发技术很多,比如说:PHP、ASP、JSP等,本系统使用JSP进行开发。因为它具有以下优点16:(1)将容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的
37、动态容。相关容的逻辑被封装在标识和JavaBeans组件中,并且绑定在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Bean中,那么其他人。如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的容(例如,通过访问JavaBeans组件使用JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。JavaBeans可以挂载到存在的组件结构。这有助于作者保护自己的代码,而且又保证了任何基于HTML的Web浏览器的完全可用性。(2)生成可重用性组件绝大多数JSP页面依赖
38、于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeans组件)来执行应用程序所要求的更为复杂的处理。基于组件的方法加速了总体开发过程。并且使得各种组织在它们现有的技能和优化结果的开发努力中得到平衡。(3)健壮的存储管理和安全性17由于JSP页面的置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有优点,包括健壮的存储管理和安全性。(4)一次编译,随处运行18因为Java是运用于广泛的设备和计算机平台上的,所以被设计成平台无关的,即不管在哪里都能照常运行。JSP作为Java平台的一部分,拥
39、有Java编程语言“一次编译,随处运行”的特点。(5)JSP的平台适应性更广泛这是JSP比ASP的优越之处。几乎所有平台都支持Java、JSP+JavaBeans,它们可以在任何平台下通行无阻。从一个平台移植到另一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的字节码,与平台无关。2.2.2SQL Server简述SQL Server是Microsoft公司的一个关系数据库管理系统,但说起它的历史,却得从Sybase开始的。SOL Server从20世纪80年代后期开始开发,最早起源于1987年的Sybase SQL Server。SQL Server最初是由M
40、icrosoft、Sybase和Ashton-Tate三家公司共同开发的,1988年,Microsoft公司、Sybase公司和Aston-Tate公司把该产品移植到OS/2上。后来Aston-Tate公司退出了该产品的开发,而Microsoft公司、Sybase公司则签署了一项共同开发协议,这两家公司的共同开发结果是发布了用于Windows NT操作系统的SOL Server,1992年,将SOL Server移植到了Windows NT平台上。在SQL Server 4版本发行以后,Microsoft公司和Sybase公司在SOL Server的开发方面分道扬镳,取消了合同,各自开发自己的
41、SQL Server。Microsoft公司专注于Windows NT平台上的SQL Server开发,而Sybase公司则致力于UNIX平台上的SQL Server的开发。SQL Server6.0版是第一个完全由Microsoft公司开发的版本。1996年,Microsoft公司推出了SQL Server 6.5版本,接着在1998年又推出了具有巨大变化的7.0版,这一版本在数据存储和数据库引擎方面发生了根本性的变化。又经过两年的努力开发,Microsoft公司于2000年9月布了SQL Server 2000。其中包括企业版、标准版、开发版、个人版四个版本。从SOL Server 7.0
42、到SOL Server 2000的变化是渐进的,没有从6.5到7.0变化那么大,只是在SQL Server 7.0的基础上进行了增强19,20。2.1.4 Eclipse与MyEclipse简述 (1)Eclipse简述Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发
43、环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 2003年,Eclipse 3.0选择OSGi服务平台规为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为Ganymede的3.4版。2009年7月发布代号为GALILEO的3.5版。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固
44、定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat与Sybase等。Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visua
45、l Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclips
46、e 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以与给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。基于 Eclipse 的应用程序的突出例子是 IBM 的 WebSphere Studio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、Servlet、E、XML、Web 服务和数据库访问的支持。(2)MyEclipse简述MyEclipse企业级工作平台(MyEclipse Enterp
47、rise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以与应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类:J2EE模型;WEB开发工具;E开发工具;应用程序服务器的连接器;J2EE项目部署服务;数据库服务;MyEclipse整合帮助。对于以上每一种功能上的类别,在Eclipse中都有相
48、应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以与除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。2.3本章小结本章介绍了开发网上书店系统所要用到的一些基础知识,首先介绍了数据库的基础知识,包括数据库的设计原则和SQL语句的简介。其次介绍了本系统所要使用的一些工具的基础知识,包括JSP技术、SQL Se
49、rver 2000数据库和MyEclipse开发平台。第3章 系统分析3.1功能性需求分析根据需求,将网上书店系统的功能实现分为两大部分:前台购书子系统和后台管理子系统,前台购书子系统主要是会员来操作,实现浏览书店以与购书过程;后台管理子系统是管理员来操作,实现对书店的管理与维护。系统的功能模块图如图3-1所示。图3-1 系统功能模块图注册登录模块:主要实现系统中用户信息注册,身份验证功能。前台购书子系统:(1)修改资料:修改用户基本信息;(2)图书查询:提供“字段查询”、“分类查询”、“索引查询”三种查询方式供用户选择;(3)热点图书:列出一些比较流行的热点图书,方便用户查找;(4)推荐图书
50、:为广大读者推荐的图书;(5)查看类别图书:列出各个类别的图书;(6)购物车:针对每一个网上购物的用户提供一个虚拟的购物车,用户可随时查看,添加,删除,修改购物车中所购商品信息,为最终提交订单提供必要信息;(7)读者反馈:通过读者推荐和图书评比,获得读者反馈的信息。后台管理子系统:(1)图书查询:查询图书的具体信息;(2)图书管理:增加新的图书,删除售完的图书;(3)销售状况查询:查看某一个时间段的销售信息或者订单;(4)图书类别管理:增加新的图书类别,删除不用的图书类别;(5)会员消费查询:查看会员的消费信息;(6)会员信息查询:查看会员的基本信息,以便为该用户发货;(7)出版商管理:增加新
51、的出版商,删除不提供图书的出版商;(8)会员等级设定:设置各个消费金额所对应的折扣率,比便为会员提供符合其消费。3.2 非功能性需求分析软件产品的非功能性需求十分重要,它不仅决定了产品的质量,还在很大程度上影响着功能性需求的实现和该产品的市场占有率,从而最终决定该软件产品的成败,GoogleMaps比传统型如MapQuest的软件的成功就充分说明了非功能性需求的重要性。非功能性需指软件产品为满足用户业务需要而必须具有且除功能需求以外的特性。软件产品的非功能性需求包括系统的性能、可靠性、可维护性、可扩充性、可用性以与对技术和业务的适应性等。(1)系统安全性需求系统应保证企业的部信息对外,以保障使
52、用者的权益。所以本系统采用权限管理,控制用户的不同使用权限,用户不能越权操作,从而保证数据的安全性。同时,用户要求系统具有高度的可靠性,数据的准确性,系统的可恢复性21。(2)可维护性需求客户会在系统使用过程中不断对系统提出新要求,扩展系统功能,这就要求系统的可升级性必须良好,以满足客户长期使用的要求,并且在用户有新要求时可以快速扩展系统功能22。(3)用户操作需求整个网上购物过程简单,即用户可以迅速定位自己所需商品,以最少的步骤,最佳的用户体验完成购物过程,这对网上购物系统十分重要,要求系统使用简单、方便,如:多用鼠标选择功能,减少用户键盘输入,从而减少用户非法输入,以达到“人机友好”的目的
53、。(4)运行速度需求管理信息系统的响应时间是衡量系统优劣,性能好坏的重要参考,系统要求响应时间短,更新处理迅速,数据转换和传送时间短,后台服务器响应迅速等。由于本系统使用者的特殊性,要求系统必须与时高效,响应迅速。并且保证在运行安全可靠的前提下高速响应。(5)界面需求从界面背景色到界面背景图片不作具体要求,但必须简单、明快、一目了然,界面友好,易于操作。3.3 系统用例分析合理的实体关系图有助于我们对系统结构设计和系统功能设计的把握,使整个设计思路变得清晰。并为后面的详细设计做准备。根据前面的功能系那个需求分析,我们可以确定该系统一共有两种操作者,一种是管理员,另一种是会员。他们对系统的操作有
54、一样的部分也有不同的部分,管理员的权限要比会员的权限大的多。该系统各个实体之间的关系如图3-2,图3-3所示。图3-2 用户用例图图3-3 管理员用例图3.4本章小结本章对网上书店系统做了分析,包括功能性分析、非功能性分析和系统的用例分析。每个系统在做之前都要进行系统分析,设计出系统的功能以与如何实现,并且还要注重一些非功能性的需求,比如用户对界面、操作的要求等。系统的用例分析实际是功能性分析的扩展,从操作系统的用户的角度再次说明系统的功能与实现。第4章 系统设计4.1 系统操作流程为了更好地设计系统,我们首先需要具体研究一下该系统的操作流程。该系统的操作流程主要包括两个:一个是会员操作流程;
55、另一个是管理员操作流程。下面将逐一介绍。4.1.1会员操作流程已经注册过的用户可以直接输入和密码进入系统,通过身份验证后,用户会进入系统主界面,在该界面中用户可以进行查找图书、购买图书、提交购物车等操作。4.1.2 管理员操作流程管理员是系统中具有最高权限的人,当管理员要对进行维护时必须正确地输入管理员的和密码,系统核对和密码无误后,管理员才能进入管理主界面。管理员可以在该界面中进行录入新的图书信息、更改图书信息、删除图书信息、确认用户订单、查看用户信息等操作。4.2 数据库设计与实现创建好存放数据的数据库后就要创建具体的表存放关联数据,表的创建方法与数据库的创建方法类似,此处不作详细说明。在
56、进行表的设计时,字段命名要遵循一定的原则,尽量做到见其名知其意,提高数据库的可读性,方便用户管理。数据类型除尽量采用“varchar”类型外,有关“价格”的数据采用“money”类型,减少编码过程中的数据类型转换。选择字段长度时要根据不同的字段,具体情况具体分析,字段长度过长,会造成系统资源浪费,长度太短,不能达到系统使用要求,本系统所涉与的表的一样类型字段,长度选取采用统一的标准。4.2.1数据表结构本系统数据库中包含8个数据表,分别是books表、category表、customers表、feedback表、vouch表、distinction表、supplier表和salebook表。各个表的功能和结构如下:(1)books表存储了网上书店所售所有图书的基本图书信息,表结构如表4-1所示。表4-1 books表结构列名数据类型长度允许空idbookvarchar14idcat
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民航安检站内部管理制度
- 河长办机关内部管理制度
- 海关事务内部审计制度
- 扎兰屯职业学院《现代微处理器原理及应用》2024-2025学年第二学期期末试卷
- 灭鼠公司内部培训制度
- 煤矿内部市场化制度
- 煤矿运输科内部考核制度
- 四川文理学院《标志与色彩》2024-2025学年第二学期期末试卷
- 监理内部沟通制度
- 科室内部卫生管理制度
- 新版人教版八年级下册物理全册教案(完整版)教学设计
- 25-26第二学期初三年级历史备课组工作计划:研析中考真题优化复习策略提升历史学科应试能力
- 2026年及未来5年市场数据中国洗衣店行业市场调查研究及投资潜力预测报告
- 公交驾驶员文明培训课件
- 2026年1月浙江省高考首考英语试卷真题完整版(含答案+听力)
- 低钾血症诊疗指南(2025年版)
- 林业项目监理工作总结与报告
- 培训机构课程营销方案设计
- 化工造粒工安全教育考核试卷含答案
- 制冷基础知识课件
- 森林防火区划定管理规范
评论
0/150
提交评论