《电子图书出版管理系统的设计与实现1.doc》由会员分享,可在线阅读,更多相关《电子图书出版管理系统的设计与实现1.doc(12页珍藏版)》请在金锄头文库上搜索。
1、电子图书出版管理系统的设计与实现Xyz(平顶山学院,河南 平顶山 467002)摘 要2关键词:Web Service SQL SERVER ADO.NET 申请单20.引言31.相关技术简介411 Web Service412 XML413 SOAP与WSDL414 SQL Server415 数据访问技术ADO.NET42 电子图书出版管理系统的需求分析52.1 系统功能分析52.2 系统功能的总体设计52.2.1系统功能的总体设计52.2.2系统核心模块申请单管理的设计62.3 数据库设计62.3.1数据库框架设计62.3.2数据库中表的设计和实现72.4 存储过程83 系统功能模块具体
2、实现方案93.1 系统主界面93.2 作者会员成功登陆后进入的主界面93.2.1 功能描述93.2.3 出版书稿主界面103.2.4 出版申请主界面103.3 出版商成功登陆后进入的主界面103.3.1申请单管理主界面104 结束语11参考文献121 蔡月茹等.Web service 基础教程.清华大学出版社.2005122 郑阿奇等.SQL Server 实用教程.电子工业出版社.20021212摘 要:本文主要介绍了依托XML Web Service、ASP.NET及ADO.NET等相关技术的电子图书出版管理系统的设计与实现过程。关键词:Web Service SQL SERVER ADO
3、.NET 申请单Absract: This paper mainly introduces the design and realization of the e-book publication management systems relying on the technologies of XML Web Service, ASP.NET and ADO.NET etc. Key words: Web Service SQL SERVER ADO.NET Requisition Sheet0.引言21世纪是信息时代,信息技术的发展已经在很大程度上促进了各行各业的发展,网络技术在图书出版上
4、的应用也在不断渗入,图书出版的网络化也成了必然的趋势。目前,电子图书与纸版图书共同存在,共同发展,然而,电子图书和网络出版是大势所趋,将来电子图书一定会取代纸版图书。因为与纸版图书相比电子图书具有以下优点:出版程序简单,修订、更正迅速,降低了出版成本;没有库存和运输,不需纸张印刷,节约资源,减少环境污染;可以按需印刷,大大降低了经济风险。事实表明,电子图书的销售份额不断上升,消费者用于电子图书的花费也不断增加。电子图书的兴起将带动出版商等业内人士及行业进行重新调整,转变为网上商业公司。我们经过长时间的系统需求分析,合理的模块化设计开发的电子图书在线出版系统正符合这种浪潮的需要。下面先对该系统依
5、托的技术进行简介,然后主要介绍该系统的设计与实现过程。1.相关技术简介11 Web Service一个通用的标准可被用来描述数据,而且是中立于平台与语言的XML。 一种通用的通信协议,而且是中立于平台与语言的SOAP。一个通用的合约语言(Contract Language)用来描述Web Service,例如:SDL(Service Description Language)。112 XMLXML(Extensiable Markup Language,可扩展标记语言)是一种普通的、独立于平台的数据描述语言,是Internet上表示和传递数据的Web标准。目前,很多大公司都提供了对XML的支持
6、。13 SOAP与WSDLSOAP(Simple Object Access Protocol,简单对象访问协议)用来与Web Service交换数据,是一个开放的基于XML的Internet标准。简单的说,SOAP就是传递HTTP请求和应答数据的一种标准。WSDL(Web Service Description Language,Web 服务描述语言)用于描述Web Service提供的方法以及调用这些方法的各种方式。它是另一种与XML完全兼容的语法。14 SQL ServerSQL Server是一个功能完备的数据库管理系统。它包括支持开发的引擎、标准的SQL语言、扩展的特性(如复制、OL
7、AP、分析)等功能。SQL Server作为微软在Windows 系列平台上开发的数据库,一经推出就以其易用性得到了很多用户的青睐。215 数据访问技术ADO.NETADO.NET提供对Microsoft SQL Service等数据源以及OLE DB和XML公开的数据源的一致访问。数据共享使用者应用程序可以使用ADO.NET来连接到这些数据源,并检索、操作和更新数据。ADO.NET包含用于连接到数据库、执行命令和检索结果的.NET数据提供程序,用户可以直接处理检索到的结果,也可以将其放入DataSet对象中。使用DataSet对象方便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,
8、以特殊方式向用户公开,它也可以独立于.NET数据提供程序使用,用于管理应用程序本地的数据或源自 XML的数据。2 电子图书出版管理系统的需求分析2.1 系统功能分析电子图书出版管理系统主要是应用于作者会员的图书在线出版。根据用户提出的要求,本系统的主要功能应具有用户管理,申请单管理,合同管理,图书管理等功能。由此要求本系统主要分为四个功能模块:用户管理,申请单管理,合同管理,图书管理。其功能图如图2-1所示:图2-1 图书管理系统功能模块图2.2 系统功能的总体设计2.2.1系统功能的总体设计 一个应用系统要高效地运行,除了利用先进的硬件条件和系统软件外,应用软件的设计思想也有很大的影响;下面
9、论述一下该系统的软件设计的总体框架,总体框架设计如下:图2-2 图书出版管理系统总框架图下面依据上图对电子图书在线出版系统要实现的功能进行分析:1)图书出版是一项商务活动,受法律的保护,因此出版商对作者实行会员制管理,作者必须正确输入自己的关键信息,如真实姓名、身份证号码、联系电话、电子信箱以及密码提示答案等。2)作者会员必须登录后才能出版自己的书稿。出版前必须认真阅读出版条款,同意后方能出版书稿。作者会员出版前必须填写出版申请单,一张出版申请单只能出版一份书稿。出版申请单需要包含以下信息:所需出版的图书的题目、简要介绍、目录等信息,希望获得报酬,附加的要求等。3)作者会员填写完出版申请单后把
10、书稿一并上传到服务商的服务器上。4)出版商可以批准作者会员的出版申请,也可以拒绝他们的申请。5)作者会员可以查询自己已经提交的出版申请单的处理情况。如果出版申请单没有被接纳,则可以修改申请单再次提交。如果出版申请单被出版商接纳了,则需要作者会员确认后出版商才正式出版作者的书稿。6)当出版商同意作者会员的出版申请而且经过作者会员的确认后,双方将当面签署合同。作者可以在网上在线查询合同的内容。7)图书出版后,出版社与作者会员商定版权的归属,由出版社对出版的图书进行管理。2.2.2系统核心模块申请单管理的设计申请单管理模块是整个系统的核心与关键所在,其它所有的操作都建立在此模块基础之上,而且此模块与
11、系统的其它模块也紧密关联。首先作者会员要填写自己的申请单并添加所要出版的书稿,进而提交申请单和上传书稿,(此时申请单的状态为初始状态,赋值为1),以等待出版商的审阅。作者会员可以通过查看出版申请看自己的申请单是否被接纳,如果被接纳(此时申请单状态为2),且作者不再改动申请单同意出版的话,就点击确认按钮(此时申请单的状态为双方都同意的最终状态,赋值为4),然后作者可以与出版商签订合同,最后出版图书。如果没有被接纳(此时申请单的状态为3),作者必须修改申请单并再次提交申请单(此时申请单的状态仍为初始状态,赋值为1),以等待出版商的再次审阅。其次出版商管理员可以进入申请单管理,进而查看申请单,如果申
12、请单没有被审阅过或者是作者修改后提交的申请单(此时申请单状态为1),对申请单以及上传的书稿进行审阅,若同意出版,则点击同意出版按钮(此时的申请单已经被出版商审阅通过,申请单状态赋值为2);若不同意出版,则点击不同意出版按钮(此时的申请单已经被出版商审阅但没有通过,申请单状态赋值为3)。如果申请单是已被作者确认过的申请单(此时申请单的状态为4),然后出版商就可以与作者签订合同,最后出版图书。2.3 数据库设计2.3.1数据库框架设计数据库的设计对系统性能有很大的影响,如果设计的不合理,不仅会增加客户端和服务器端程序的编写和维护的难度,而且会影响系统实际运行的性能。数据库设计通常先进行逻辑设计,然
13、后进行物理设计。数据库逻辑设计去除了所有冗余数据,提高了数据吞吐速度,保证了数据的完整性,清楚地表达数据元素之间的关系。但对于多表之间的关联查询(尤其是大数据表),如果去除所有冗余,其性能将会降低,同时也提高了客户端程序的编程难度,因此,物理设计需折衷考虑,根据业务规则,确定对关联表的数据量大小、数据项的访问频度,对此类数据表频繁的关联查询应适当提高数据冗余设计。鉴于这种情况我们对数据库进行精心设计,建立的数据库表间的逻辑关系图如图2-3所示:图2-3 数据库表间的逻辑关系图从上面数据库表间的逻辑关系图可以看出:表Author和表UploadEBookTemp之间通过Author_Id字段相连
14、接;表Request和表UploadEBookTemp之间通过Author_Id字段相连接;表Contract和表book之间通过Contract_Id字段相连接。各数据库分别设有数据库所有者,完全访问用户,只读访问用户等,分别设置相应权限。非数据库用户不能对该数据库数据进行访问,只读权限用户只能浏览数据库数据,而不能修改,只有完全访问权限用户和数据库所有者,才能对数据库数据进行修改。这样,通过定义用户权限保证数据库的安全性。比如:普通会员作者只有在修改个人信息时才能对Author表的内容进行修改,只有作者的出版申请单在不被出版商接纳时,才能对申请单进行修改并再次提交;而后台服务的管理员可以对
15、各个表进行修改、删除。2.3.2数据库中表的设计和实现根据对数据库的分析设计,本系统主要用到数据库中的五个表,我们以出版申请单request为例,对表的结构和各字段的要求作如下设计:Request表用来存放所有的出版申请单的信息。主要包括申请单内容、上传的书号、申请单状态、上传的日期等信息。其中Request_Id为主键。出版申请单的结构:2.4 存储过程在SQL Server中,可以定义子程序存放在数据库中,这样的子句称为存储过程,存储过程是数据库对象之一。可根据传入的参数(或无参数),完成一组操作,实现特定功能。使用存储过程的优点如下:1)速度快:存储过程在服务器端运行,执行速度快。2)可重用:功能在实现上唯一,克服了冗余,可在多个功能模块中被重复调用,接口统一,操作统一,数据统一。3)提高系统的性能:存储过程执行一次后,其执行规划就驻留在高速缓冲存储器,在以后的操作中,只需从高速缓冲存储器中调用已编译好的二进制代码执行,提高了系统的性能。4)易维护:程序在使用中,应用层和数据访问层是分开的,两者相互独立,如果是对数据访问层的修改,可直接在SQL Server 上修改存储过程即可,无需涉及到程序