基于web的图书管理系统毕业论文.docx
- 文档编号:26315197
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:37
- 大小:1.72MB
基于web的图书管理系统毕业论文.docx
《基于web的图书管理系统毕业论文.docx》由会员分享,可在线阅读,更多相关《基于web的图书管理系统毕业论文.docx(37页珍藏版)》请在冰豆网上搜索。
基于web的图书管理系统毕业论文
基于web的图书管理系统毕业论文
1、概述
早期图书管理由于图书量比较少,所以主要是依靠人工管理,利用卡片的形式进行图书的借阅和归还。
随着社会发展,图书馆的不断扩建,图书量的不断扩大,依靠原始的管理方法数据处理手工操作,工作量大,出错率高,出错后不易更改。
图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和容记录在文件中,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。
如要对很长时间以前的图书进行更改就更加困难了。
如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就必不可少了。
为了满足图书管理现代化的需求,国外软件商已经开发出许多商品化的图书管理软件,但它们大多是面向大型专业图书馆而开发的,专业性强且功能分工比较细,较难以掌握,不适合中小型图书馆使用。
综合以上考虑,一个操作简便,功能适合的图书管理系统对于中小型图书馆是很必要的。
2、开发工具选择
2.1ASP.net简介
ASP.NET的前身ASP技术,是在IIS2.0上首次推出(WindowsNT3.51),当时与ADO1.0一起推出,在IIS3.0(WindowsNT4.0)发扬光大,成为服务器端应用程序的热门开发工具,微软还特别为它量身打造了VisualInterDev开发工具,在1994年到2000年之间,ASP技术已经成为微软推展WindowsNT4.0平台的关键技术之一,数以万计的ASP也是这个时候开始如雨后春笋般的出现在网络上。
它的简单以及高度可定制化的能力,也是它能迅速崛起的原因之一。
不过ASP的缺点也逐渐的浮现出来:
意大利面型的程序开发方法,让维护的难度提高很多,尤其是大型的ASP应用程序。
直译式的VBScript或JScript语言,让效能有些许的受限。
延展性因为其基础架构扩充性不足而受限,虽然有COM元件可用,但开发一些特殊功能(像文件上传)时,没有来自置的支持,需要寻求第三方软件商开发的元件。
1997年时,微软开始针对ASP的缺点(尤其是意大利面型的程序开发方法)准备开始一个新项目来开发,当时ASP.NET的主要领导人ScottGuthrie刚从杜克大学毕业,他和IIS团队的MarkAnders经理一起合作两个月,开发出了下一代ASP技术的原型,这个原型在1997年的圣诞节时被发展出来,并给予一个名称:
XSP,这个原型产品使用的是Java语言。
不过它马上就被纳入当时还在开发中的CLR平台,ScottGuthrie事后也认为将这个技术移植到当时的CLR平台,确实有很大的风险(hugerisk),但当时的XSP团队却是以CLR开发应用的第一个团队。
为了将XSP移植到CLR中,XSP团队将XSP的核程序全部以C#语言重新撰写(在部的项目代号是"ProjectCool",但是当时对公开场合是的),并且改名为ASP+,作为ASP技术的后继者,并且也会提供一个简单的移转方法给ASP开发人员。
ASP+首次的Beta版本以及应用在PDC2000中亮相,由BillGates主讲Keynote(即关键技术的概览),由富士通公司展示使用COBOL语言撰写ASP+应用程序,并且宣布它可以使用VisualBasic.NET、C#、Perl与Python语言(后两者由ActiveState公司开发的互通工具支持)来开发。
在2000年第二季时,微软正式推动.NET策略,ASP+也顺理成章的改名为ASP.NET,经过四年的开发,第一个版本的ASP.NET在2002年1月5日亮相(和.NETFramework1.0),ScottGuthrie也成为ASP.NET的产品经理(到现在已经开发了数个微软产品,像ASP.NETAJAX和MicrosoftSilverlight)。
目前最新版本的ASP.NET4.0以及.NETFramework4.0已经在VS2010平台应用。
ASP.net构架是可以用Microsoft(R)公司最新的产品VisualS开发环境进行开发,WYSIWYG(WhatYouSeeIsWhatYouGet所见即为所得)的编辑。
这些仅是ASP.net强大化软件支持的一小部分。
因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows2000/2003Server/VISTA/7/XP上)。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。
ASP.net同时也是language-independent(语言独立化)的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript,C++、F++。
将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。
ASP.NET一般分为两种开发语言,VB.NET和C#,C#相对比较常用,因为是.NET独有的语言,VB.NET则为以前VB程序设计,适合于以前VB程序员,如果新接触.NET,没有其他开发语言经验,建议直接学习C#即可。
ASP.net使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和配置变得非常简单。
例如ASP.net页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。
ASP.net使用一种字符基础的,分级的配置系统,虚拟服务器环境和应用程序的设置更加简单。
因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。
这种被称为"ZeroLocalAdministration"的哲学观念使A的基于应用的开发更加具体和快捷。
一个ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动,一切就是这么简单。
多处理器环境的可靠性ASP.net已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。
即使你现在的ASP.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP却做不到这一点。
自定义性和可扩展性ASP.net设计时考虑了让开发人员可以在自己的代码中自己定义"plug-in"的模块。
这与原来的包含关系不同,ASP.net可以加入自己定义的任何组件。
程序的开发从来没有这么简单过。
安全性基于Windows认证技术和每应用程序配置,你可以确保你的原程序是绝对安全的。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行。
将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
另外,任何ASP.NET应用程序都可以使用整个.NETFramework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
当创建ASP.NET应用程序时,开发人员可以使用Web窗体或XMLWebs,或以他们认为合适的任何方式进行组合。
每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义.如果你从来没有开发过程序,那么这不适合你,你应该至少掌握一些HTML语言和简单的Web开发术语。
你不需要先前的ASP开发经验,但是你必须了解交互式Web程序开发的概念,包含窗体,脚本,和数据接口的概念,如果你具备了这些条件的话,那么你就可以在A的世界开始展翅高飞了。
当装载(hosting)ASP.NET的Web服务器接收到HTTP要求时,HTTP聆听程序(HTTPListener)会将要求转交给URL指定的应用程序的工作流程(WorkerProcess),ASP.NET的工作流程处理器(aspnet_isapi.dll,若是IIS5.0时则是aspnet_wp.exe)会解析URL,并激活位于System.Web.Hosting命名空间中的ISAPIRuntime对象,接收HTTP要求,并调用HttpRuntime,运行HttpRuntime.ProcessRequest(),在ProcessRequest()中使用HttpApplicationFactory建立新的HttpApplication(或是指定的IHttpHandler处理器),再分派给Page中的ProcessRequest()或是IHttpHandler的ProcessRequest()方法,运行之后,再传回到ISAPIRuntime,以及aspnet_isapi.dll,最后交由HTTPListener回传给用户端,因为运行程序有如管线般顺畅的运行,因此称为HTTPPipelineMode。
在ASP.NET部的HTTP处理器有:
ISAPIRuntime:
由aspnet_isapi.dll调用,初始化HttpWorkerRequest对象(会由IIS的版本决定要初始化的版本)。
HttpRuntime:
提供要求队列(RequestQueue)、调用HttpWorkerRequest中的ProcessRequest()方法,以及后续的处理工作。
HttpWorkerRequest:
产生HttpApplication、HttpRequest、HttpResponse等基础对象的HTTP要求对象,并将要求转送到要处理的对象(并调用它的ProcessRequest()方法)。
IHttpHandler与IHttpAsyncHandler:
负责处理HTTP要求的单元,由ProcessRequest()来分派与运行要求。
ASP.NET网页中的事件程序当HttpWorkerRequest调用ASP.NET网页(System.Web.UI命名空间的Page类)的Page.ProcessRequest()方法时,它会依序的引发Page的各个事件,并同时调用在Page中所有控件的相关事件,其引发顺序为:
PreInit事件:
运行预先初始化的工作,在ASP.NET2.0中,若要动态调整主版页面(MasterPage)、布景主题(Theme)时,要在这个事件中调整。
Init事件:
运行初始化工作。
InitCompleted事件:
在完成初始化工作后引发。
Preload事件:
运行预先加载的工作。
Load事件:
运行加载的工作,大多数的网页都拥有Page_Load事件处理程序,用户控件中也有Page_Load事件例程,都会在此时调用。
控件的PostBack变更通知:
当网页侦测到是PostBack要求时,会引发PostBack消息通知的事件。
控件的PostBack相关事件:
当网页侦测到是PostBack要求时,会引发PostBack消息指定的控件的事件。
LoadCompleted事件:
运行加载完成后的工作。
PreRender事件:
处理在产生HTML结果前的工作。
SaveStateCompleted事件:
处理页面状态(ViewState与ControlState)储存完成后的事件。
Render事件:
处理产生HTML的工作。
Unload事件:
处理退出网页处理时的工作。
如果HttpWorkerRequest调用的是实现IHttpHandler界面的HTTP处理程序时,它只会调用IHttpHandler.ProcessRequest()方法,由它来处理程序的输出,不像Page.ProcessRequest()会处理事件顺序,因此HTTPHandler很适合轻量级的数据处理,像是输出文件数据流或是图片数据流等。
ASP.net与ASP的区别:
ASP是解释性编程框架,而ASP.net是编译性框架,ASP.net无论是从执行效率和安全上都远远超过ASP而文件上也是有差异的ASP
的后缀是.asp而ASP.net则是.aspx和.aspx.cs,ASP.net实现了代码分离。
可以说让代码管理更加直观。
以往在ASP中常被使用的五大基本对象,在ASP.net中依然支持:
Application:
包装了HttpApplication对象,在程序中使用Application指令取得的对象,都是来自于HttpContext.Current.Application属性回传而得。
Request:
包装了HttpRequest对象,在程序中使用Request指令取得的对象,都是来自于HttpContext.Current.Request属性回传而得。
Response:
包装了HttpResponse对象,在程序中使用Response指令取得的对象,都是来自于HttpContext.Current.Response属性回传而得。
Session:
包装了HttpSessionState对象,在程序中使用Session指令取得的对象,都是来自于HttpContext.Current.Session属性回传而得。
Server:
包装了HttpServerUtility对象,在程序中使用Server指令取得的对象,都是来自于HttpContext.Current.Server属性回传而得。
2.2MicrosoftSQLServer2000简介
SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。
它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的SQL接口。
它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。
结构化查询语言(StructuredQueryLanguage)最早是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。
SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用。
如今无论是像Oracle、Sybase、DB2、Informix、SQLServer这些大型的数据库管理系统,还是像VisualFoxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。
美国国家标准局与国际标准化组织已经制定了SQL标准。
SQL语言包含3个部分:
数据定义语言DataDefinitionLanguage(DDL),定义:
definition/例如:
CREATE、DROP、ALTER等语句。
数据操作语言DataManipulationLanguage(DML),操作:
make/例如:
INSERT、UPDATE、DELETE语句。
数据控制语言DataControllingLanguage(DCL),控制:
control/例如:
GRANT、REVOKE、COMMIT、ROLLBACK等语句。
SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的一个版本。
该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindowsXP的微型计算机到运行MicrosoftWindows2003Server的大型多处理器的服务器等多种平台使用。
SQLServer2000是基于客户机/服务器(Client/Server)模型的新一代大型关系型数据库管理系统DBMS(databasemanagementsystem),它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。
它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。
DBMS提供数据定义语言DDL(DataDefinitionLanguage)与数据操作语言DML(DataManipulationLanguage),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。
它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用,为个人/企业的数据管理提供强大的支持。
2.3运行环境
硬件环境:
处理器:
Pentium4或以上
存:
至少1G以上
硬盘空间:
至少20G硬盘空间以上
操作系统:
Windows2000/XP/Vista/7
软件环境:
本系统在windowsXP及MicrosoftVisualStudio2005及MicrosoftSQLServer2000中实现。
2.4开发软件的安装
安装MicrosoftVisualStudio2005:
运行安装目录下的Setup.exe如下图所示;
在弹出对话框中选择安装VisualStudio2005,至于msdnlibrary和servicerelease等增强功能组件则可以选择不安装
选择所需安装的VisualStudio2005组件,输入产品密钥和用户名称,单击下一步;
选择需要安装的功能,以及目标路径;
选择完成后单击“安装”;
至此MicrosoftVisualStudio2005安装完成,文件比较大,安装很慢。
MicrosoftSQLServer2000安装:
运行安装文件,选择安装简体中文个人版
选择安装SQLServer2000组件
选择安装数据库服务器
计算机名选择“本地计算机”,单击下一步
选择创建新的SQLServer实例,或安装“客服端工具”,单击下一步。
选择服务器和客户端工具,单击下一步
选择服务账户如下图所示
身份验证模式选择混合模式,密码和用户名均为sa,单击下一步
一切设置完成后,单击下一步开始安装,几分钟后安装完成。
3、图书管理系统的开发
3.1需求分析
随着学校图书馆的规模不断扩大,图书数量急剧增加,有关图书的各种信息量也成倍增长。
面对庞大的信息量需要有图书管理系统来提高管理工作的效率。
通过这样的系统可以做到信息的规管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。
本系统主要用于学校图书管理,其主要任务是用计算机对图书信息进行日常管理,如查询、修改、增加、删除,针对这些要求设计了图书管理系统。
3.2开发设计思想
本图书信息管理系统采用B/S模式来实现客户端对服务器端的调用,所谓B/S模式即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式。
在B/S模式中,客户端运行浏览器软件。
浏览器以超文本形式向WEB服务器提出访问数据库的要求,WEB服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给WEB服务器,WEB服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器,以友好的WEB页面形式显示出来。
如图该系统运行于服务器端,完全采用ASP.net+SQL开发,客户端只需安装有WINDOWS系统即可使用本系统。
该系统包括用户登录、图书浏览、图书借阅、图书归还、图书管理、读者管理、个人信息等主要功能模块。
3.3主要功能
用户登录模块:
系统用户必须输入正确的用户名和密码才可以登陆管理系统。
图书浏览模块:
主要针对一般用户,用于图书的检索。
图书借阅模块:
由图书管理员使用,图书管理员按照书号和书名查找图书,并显示该书的剩余数,学生按照学号和登记借书,并显示已借图书数量。
图书归还模块:
由图书管理员使用。
图书管理模块:
由图书管理员使用,修改图书详细信息、添加新书。
读者管理模块:
由系统管理员使用,用于添加删除读者信息。
用户管理模块:
由系统管理员使用,用于添加删除系统用户。
个人信息模块:
用于系统管理员或图书管理员修改自己用户信息。
3.4系统层次图
系统层次图如图3-1所示:
图3-1系统层次图
4、数据库设计
首先,在“开始”菜单中选择“所有程序”→“MicrosoftSQLServer”→“服务管理器”启动SQL2000的服务,如图所示
然后在“开始”菜单中选择“所有程序”→“MicrosoftSQLServer”→“企业管理器”
在打开的菜单中右键单击数据库,选择“新建数据库”,输入名称后点击完成。
打开新建的数据库,右键单击表,选择新建表
新建的每个表的主键都需要设定,
对于用户信息表:
主键设为UserCode,数据类型为numeric,长度为9且不允许为空,主要用来记录用户的编号;
UserName定义为varchar型,用来保存可变长度的字符串,主要用来记录用户的真实;
LoginID定义为varchar型,用来保存可变长度的字符串,主要用来保存用户的登录ID;
LoginPwd定义为varchar型,用来保存可变长度的字符串,主要用来保存用户的登录密码;
LoginTime定义为datetime型,用来记录用户的登录时间;
UseLvl定义为varchar型,用来保存可变长度的字符串,主要用来规定用户的权限级别。
表1用户信息表
对于读者信息表:
主键设为SID,定义为numeric数据类型,用来记录读者的编号;
StudentID,定义为datetime型,用来记录读者的学号;
StudentName,用来记录读者
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 web 图书 管理 系统 毕业论文
![提示](https://static.bdocx.com/images/bang_tan.gif)