摘 要
该图书管理系统严格按照软件工程的模式来进行设计, 使用了ASP技术并采用Macromedia Dreamweaver MX 2004 作为设计工具,后台的数据库使用Access创建,并使用了ADO方法来访问数据库。
图书管理系统的设计方法比较多,而利用ASP设计的比较少。而本次毕业设计就是希望通过ASP技术开发出交互功能更强的管理系统。系统使用了快速原型法来进行设计,主要实现了管理员和读者两个模块,管理员可以对图书进行管理和维护,读者可以查阅书籍和自己的借阅信息等。系统发布之后,管理员或读者就可以通过Web管理和访问数据库,这样设计既有利于读者方便地操作,也有利于管理员有效的管理。并且已经编码的脚本在运行时由脚本引擎解码,增加了系统的安全性。
总之,此动态交互式的图书管理系统具有图书信息的动态管理功能,在管理效率上有很大的提高,基本上达到了设计目的。
关键词:ASP; ADO; 快速原型法
Abstract
This library management system is designed strictly under the model of the Software Engineering Science. It uses the skill of ASP and its design tool is Macromedia Dreamweavers MX 2004. The background database is created by Access and is accessed by ADO method.
There are many designing methods of the library management system, but that using the skill of ASP is very few. So the aim of this design is using the skill ASP to develop a management system with more alternative and higher function. The system uses Prototyping Method to build and realize two main modules-- librarian’s module and the reader’s. The librarian can manage and maintain books and the reader can search the information of books and their own lending messages. After the system is publicized, the librarian and reader can access the Web site through the Internet for management or search. In conclusion, the design makes the reader’s easy operation and manager’s efficient management. And the script-engineer decodes the encoded script while it is running, so the safety level of system becomes higher.
To sum up, this dynamic alternative library management system has the function of dynamic management of books, improved the efficiency of management and basically got the aim of design.
Keywords: ASP; ADO; Prototyping Method
目 录
1. 文献综述与理论基础 1
1.1 ASP 简介 1
1.2 ADO简介 4
1.3 脚本语言简介 5
1.3.1 VBScript 5
1.3.2 Jscript 6
1.4 ASP与JSP、PHP的比较 6
1.4.1 ASP 6
1.4.2 JSP 7
1.4.3 PHP 8
1.5 数据库的基本概念 9
1.5.1 数据库系统的类型 9
1.5.2 数据库系统的结构 9
2. 概 述 12
2.1 设计目的 12
2.2 设计方法 12
2.3 设计思想 12
3. 需求分析 13
3.1 背景概述 13
3.2 可行性分析 13
3.3 系统分析 13
4. 总体设计 16
4.1 数据库设计 16
4.1.1 数据库的逻辑设计 16
4.1.2 后台数据库的配置 18
4.2 模块设计 19
5. 详细设计 21
5.1 登录页面 21
5.2 主页面 22
5.3 借书页面 22
5.4 还书页面 23
5.5 浏览图书信息页面 25
5.6 图书信息查询页面 25
5.7 读者修改密码页面 26
结束语 28
致 谢 29
参考文献 30
附 录A 31
附 录B 38
附 录C 52
1. 文献综述与理论基础
1.1 ASP 简介
ASP(Active Server Pages)是一个服务器端的(Server.side)脚本执行环境,用户可用它产生和执行动态的、交互的、高性能的Web服务器应用程序。当脚本在服务器端而不是在客户端执行时,Web服务器将完成产生发往浏览器的HTML(Hypertext Markup Language)页的所有工作。ASP的工作模式是当浏览器向Web服务器提出文件(.asp)的请求时,一个ASP脚本就开始执行,这时Web服务器调用ASP,把该文件全部读入并执行每一条命令,然后将结果以HTML页面形式送回浏览器。
1.1.1 ASP的技术特点
几年以前,业界在动态主页发布方面唯一的渠道是CGI(Common Gateway Interface) 模式。随后出现的 ISAPI、NSAPI和JDBC等技术方案虽较CGI进步,但从企业网(Intranet )的技术现实来衡量,这些方案仍不适用于进行快速开发、及时维护和大面积的技术普及。ASP技术的出现,使动态交互式Web主页设计成为一件轻松愉快的工作。只要几行脚本语句,就能将后台的数据库信息发布到Internet/Intranet上, 在编程和网页脚本的可读性方面大大优于传统的技术方案。
ASP是 Active Server Pages(动态服务器主页)的缩写,它是一个服务器端的脚本环境,在站点的Web服务器上解释脚本,可产生并执行动态、交互式、高效率的站点服务器应用程序。ASP可以胜任基于微软Web服务器的各种动态数据发布。
从软件的技术层面看,ASP有如下的特点:
1> 无需编译 ASP脚本集成于HTML当中, 容易生成, 无需编译或链接即可直接解释执行。
2> 易于生成 使用常规文本编辑器 (如WINDOWS下的记事本) , 即可进行 *. asp页面的设计。若从工作效率来考虑,不妨选用具有可视化编辑能力的Visual InterDev。
3> 独立于浏览器 用户端只要使用可解释常规HTML码的浏览器, 即可浏览ASP所设计的主页。ASP脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。
4> 面向对象 在ASP脚本中可以方便地引用系统组件和ASP的内置组件, 还能通过定制 ActiveX Server Component (ActiveX服务器组件) 来扩充功能。
5> 与任何ActiveX scripting 语言兼容 除了可使用VBScript 和JScript语言进行设计外, 还可通过Plug.in的方式, 使用由第三方所提供的其它scripting 语言。
6> 源程序码不会外漏 ASP脚本在服务器上执行, 传到用户浏览器的只是ASP执行结果所生成的常规HTML码, 这样可保证辛辛苦苦编写出来的程序代码不会被他人盗取。
从应用的层面看,ASP有如下的功能:
1> 处理由浏览器传送到站点服务器的表单输入。
2> 访问和编辑服务器端的数据库表。使用浏览器即可输入、更新和删除站点服务器的数据库中的数据。
3> 读写站点服务器的文件, 实现访客计数器、座右铭等功能。
4> 提供广告轮播器、取得浏览器信息、URL表管理等内置功能。
5> 由cookies读写用户端的硬盘文件, 以记录用户的数据。
6> 可以实现在多个主页间共享信息, 以开发复杂的商务站点应用程序。
7> 使用VBScript或JScript等简易的脚本语言, 结合HTML码, 快速完成站点的应用程序。通过站点服务器执行脚本语言,产生或更改在客户端执行的脚本语言。
8> 扩充功能的能力强, 可通过使用Visual Basic、Java、Visual C ++ 等多种程序语言制作ActiveX Server Component以满足自己的特殊需要。
1.1.2 ASP方法与传统静态主页的区别
把信息系统纳入Internet/Intranet 的框架之后,首先要解决的问题是通过网页访问后台数据库信息。所有应用程序都被分割为页面的形式,用户的交互操作是以提交表单等方式来实现的,这就要求Web 站点具有很强的动态数据发布能力。然而,目前Web的服务,仍以提供" 静态"主页内容为主。所谓"静态",指的就是站点的主页内容是"固定不变"的,无法根据用户的需求和实际情况做出相应的变化。当浏览器通过Internet的HTTP协议向站点的Web服务器申请主页时,站点服务器就会将已设计好的静态的HTML文件传送给浏览器。若要更新主页的内容, 只能用非在线的手动方式更新HTML的文件数据。
ASP所设计出的是动态主页,可接收用户提交的信息并做出反应, 其中的数据可随实际情况而改变,无须人工对网页文件进行更新即可满足应用需要。例如:当在浏览器上填好表单并提交HTTP请求时,可以要求在站点服务器上执行一个表单所设定的应用程序,而不只是一个简单的HTML文件。该应用程序分析表单的输入数据,根据不同的数据内容将相应的执行结果(通常是数据库查寻的结果集)以HTML的格式传送给浏览器。数据库的数据可以随时变化,而服务器上执行的应用程序却不必更改,客户端得到的网页信息会始终保持新鲜的魅力。
1.1.3 ASP与组件对象的使用
在利用ASP技术进行动态Web开发的时候,应遵循这样一个原则:即 ASP的服务器端脚本必须与微软倡导的组件对象( Component Object Model )配合使用才能开发出具有实用价值的信息产品。ASP脚本相当于一种粘合剂,把一个个具有特定功能的组件对象粘合在一起,以形成最终的软件产品。这一软件制作的工艺思想类似于硬件工厂生产板卡的过程,那一个个的组件对象就相当于集成电路的芯片,而ASP脚本只是焊接芯片的焊接剂,由此可见组件对象起着核心作用。
组件对象模型COM是微软提出的一种基于二进制的Windows软件标准,它是由OLE 技术逐渐发展而来的。在使用不同语言工具写成的组件对象之间,依据COM 的标准可以进行交互。COM是技术概念和标准, 其商业概念的称谓则使用ActiveX。
上文提到的ADO就是系统提供的用于访问后台数据库的组件。此外,ASP本身还提供了五个内置的对象。这五个内置对象可被ASP 脚本直接使用,它们是:
1> Request 取得用户信息
2> Response 传递信息给用户
3> Server 提供访问服务器的方法和属性
4> Application 在一个应用程序的多个主页之间保留和使用某些共同的信息
5> Session 在一个用户的多个主页之间保留和使用某些共同的信息
其中,使用内置对象1、2可实现Web的交互功能,使用内置对象4、 5可解决具有协作机制的应用问题。
ASP的一大特色,是可以用来编写具有协作机制的应用程序,在多个用户的多个主页之间共享信息。使用内置的Application和Session 对象可实现这些功能。
Application对象保存一个应用程序共同的信息,使用此应用程序的所有用户都可以共同分享。为防止其被多个用户同时更改,提供loc k和unlock方法来实现互斥,例如:
Application.lock 禁止其他用户更改Application的信息;
Application.unlock 允许其他用户更改Application的信息。
Session对象比Application对象的使用外延范围小,它保存仅属于一个用户的一个应用程序的信息。ASP的应用程序可以只有一个首页,也可以有多个主页文件,所有的文件均位于一个虚拟路径下。Session对象可让同一个用户在多个主页之间共享信息。当用户第一次在一个应用程序中申请一个*.asp主页时,ASP将为该用户分配一个Session ID号,它将唯一地标识用户的身份,从而能将同一应用程序的不同用户区分开来。
根据需要还可以自行定制具有某些特色的组件对象,以完成特殊的任务。用Visual Basic、Visual C++、Delphi和 Java等语言都可以编写。自制的组件对象分成两类:
一是由类打包而成的*.dll文件,经注册器注册后,在ASP脚本中可通过"Set 对象名 = 类名"来引用。对象在这种使用过程中是在服务器的后台运行的,其运行的结果通过系统自动生成的HTML作用到前端浏览器。
二是生成*.ocx文件,一般用作可视化的对象ActiveX,可直接将其嵌入*.asp主页中,在页面中插入时需使用HTML语言的标记加以引用。通常构....................................