1、目 录前言 2第一章 系统设计 31.1 需求分析 31.2 系统设计 31.2.1 系统目标设计 31.2.2 开发思想设计 31.3 书海图书超市管理系统的开发环境及其可扩展性 41.3.1 书海图书超市管理系统的开发环境 41.3.2 书海图书超市管理系统的可扩展性 5第二章 总体设计 52.1 系统功能分析 52.2 系统功能模块划分 72.3 系统结构设计图 7第三章 数据库设计 83.1 概念结构设计 83.2 逻辑结构设计 103.3 数据库的实现 11第四章 系统详细设计 114.1 主 界 面 的 设 计 及 分 析 1 24.2 各 界 面 的 设 计 及 分 析 1 3第
2、五章 调试运行 25结束语 26参考文献 2 7附录:源代码程序 28前 言今天的中国已经加入了 WTO,利用计算机进行现代化管理已经接近于普及。我们身处在一个知识日新月异、时刻充满挑战的时代,科技的飞速发展使我们知道只有走在时代前言的人才可以随时随地抓住机遇来获取生存,而这一切的前提就是你要拥有比别人更多、更前卫的知识,知识的来源是学习随时随地的学习!学习!再学习!作为当代大学生,应有长远的目光和随机应变的能力,应走在时间的前面,掌握最新的社会动态、最先进科学技术,以调整自己的知识结构和能力结构,去适应社会的发展。新世纪需要具有丰富现代科学知识的人;需要能够独立解决问题、完成工作的人;需要能
3、独当一面、时常挑战自己极限的人;需要有创新意识的人。我们在不断努力中学习做一个与时代并进的人。每年的毕业设计中都有学生管理系统、图书馆管理系统,好无味,我想做个别的系统。想了想,看这大千世界,商业最赚钱。商业的运转,简单的说就是进货、卖货。大的企业、公司的管理系统我自认为还做不来,所以我转向了小的超市。它既有进货,又有销售,还有库存,但又不像想象中的那么难。试比较小商店和超市,在现代社会中,前者靠单价来获取利润,后者靠销售量来获取利润;前者商品的种类少,后者的种类繁多;前者是单一的,后者是连锁的。对消费者来说后者物美价廉,为顾客考虑周到。但由于商品的价格很不稳定,种类又多。相较而言,图书的价格
4、比较稳定,种类也少了许多;图书为人们在现代社会中不可缺少的充电品;图书又具有可收藏的价值;从发展前景上看,其他超市的风险高,倒闭收购的可能性比图书超市要大的多。所以我选择做图书超市管理系统。我现在用文字形式将我做此系统的过程及其功能介绍展现给大家。由于是初次编写,缺少经验,可能有许多不完备或出错的地方,诚恳希望老师们不吝指正。关键词: 图书超市管理、窗体、控件、数据库设计者:李静二七年五月号信息查询系统(一)编程环境基础知识.1 ASP 的产生近年来随着 Internet 技术的飞速发展及用户需求的不断升级,Web 页面技术也不断的推陈出新,使得 Web 站点的功能越来越强大,能够提供的服务种
5、类越来越繁多。从 HTML、Client Script 到 CGI,从 JAVA 的诞生到 ActiveX, Web 页面设计人员不断受到冲击,微软公司在总结了以往技术,重新思考 Web 页面设计的真正需要后,推出了 Active Server Pages (ASP),一种用以取代 CGI(Common Gateway Interface,通用网关接口)的技术。简单讲,ASP 是位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式 Web 服务器应用程序,如交互式的动态网页,包括使用 HTML 表单收集和处理信息,上传与下载等等。更重要的是,ASP 使用的 ActiveX技
6、术基于开放设计环境,用户可以自己定义和制作组件加入其中,使自己的动态网页几乎具有无限的扩充能力,这是传统的 Web 编写工具所远远不及的地方。使用 ASP 还有个好处,就在于 ASP 可利用 ADO(Active Data Object,微软的一种新的数据访问模型)方便快捷地访问数据库,从而使得开发基于 WWW 的应用系统成为可能,这也是本文选择 ASP 作为开发工具最重要的原因之一。1. ASP 与 IIS1.2.1 IIS 简介Wsb 服务器是 Web 应用程序的心脏。IIS(Internet Information Server)是微软推出的 Windows NT Option Pack
7、 的主要成员,作为 Win2000server 的扩展,自推出以来已经有了很大发展,其体系结构是当今市场上最受关注的 Web 服务器之一。新推出的 IIS4.0 版本增强了系统安全性,具有服务器端脚本开发调试,内容管理和站点分析,崩溃防护,内置 JAVA 虚拟机及全面支持 ASP 等强大功能。1.2.2 IIS 与 ASP 的结合在过去,客户机/服务器结构的设计与 Web 的相关技术几乎处于平行线上,两者相互独立并无法作出集成性的设计。现在我们利用 IIS+ASP 构成三层式 Web结构(如图 2.1 所示)的中间一层,将客户机/服务器结构与 Web 密切结合,完成前后端两者的集成输出功能,使
8、得 Web 站点的开发更方便,实现的功能更强大。利用 IIS+ASP 技术来集成 Web 前后端所带来的强大效益可归结为以下几个方面:1. 减少构建和维护成本2. 加快联机过程3. 应用软件集中在服务器端开发管理4. 前端可使用任何浏览器(IE、Netscape)5. 后端可存取任何数据库 (SQL、Access)6. 可使用任何脚本语言开发 (VBScript、JavaScript、PERL)1.2.3 ASP 的内部特点ASP 的编辑环境要求非常简单,任何一种文本编辑器都可以编写 ASP 应用程序。使用 ASP 开发网页应用程序具有以下一些特点:(1)完全内嵌,与 HTML 和 Scrip
9、t 语言充分结合。(2)无需编译,容易编写,可在服务器端直接运行,且 Web 程序开发时间短。(3)无浏览器兼容问题。(4)程序代码隐藏,在客户端只能看到由 ASP 输出的动态 HTML 文件。(5)使用任何文本编辑器都可以进行编辑设计。(6)可使用任何语言编写自己的 ActiveX Server 组件。(7)使用 ADO 组件轻松存取数据。(8)面向对象,并可扩展的 ActiveX Server 组件。一个以 ASP 为基础的应用程序包含了 Web 服务器的虚拟目录(Virtual 程序和计算逻辑前端浏览器ActiveX Server元件ActiveX Server 元件后端数据库数据库服务
10、器Microsoft IIS + ASP浏览器Directory)以及虚拟目录下的所有文件夹与执行文件。虚拟目录主要是为了保护服务器端站点的内容和资料,避免受到网络黑客的恶意破坏和攻击而产生的。在提供 WWW 服务的服务器端,虚拟目录的作用是不让客户端用户知道一些目录与重要文件的真实路径,也就是说每一个绝对路径(即真实路径)都已经隐藏起来,这些可以供网络客户访问的 Internet 资源都会以服务器的文档根目录(Document Root)作为相对路径的基点(Base) ,或者另取一个从表面上看来毫无关系的别名(Alias Name)来隐藏真实目录名称。这些相对目录就称为虚拟目录,相对路径和绝
11、对路径是相对立的。另外,每个 ASP Web 应用程序都拥有一个 Global.asa 文件,后缀名 asa是 Active Server Application 的缩写。(1) ASP 文件的存取方式使用任何一种文本编辑器都可编写 ASP 应用程序,编写的程序要以后缀名.asp 保存,不可以保存为.html 形式。如果是以.html 形式保存的话,服务器端将不编译文件中所有的包含 ASP 语法的语句。将文件保存为后缀名.asp 的形式是为了告诉提供 ASP 服务的服务器,这是一个 ASP 应用程序,必须在给客户端送出文件之前把它编译一遍。将.asp 后缀名的文件编写存储完毕之后,就可以把它放
12、在自己的 Web 服务器上执行,这样就能够在浏览器端看到 ASP 页面的输出效果了。(2) ASP 文件的结构特点到目前为止,我们已经知道 ASP 能够和 HTML、Script 语言完美结合。在这之前一直都称开发的项目为应用程序,或许有些人认为 ASP 文件是一个已经被编译过的文件,但 ASP 文件是一个文本文件,可以用任何一种编辑器打开它,并对它进行适当的编辑修改。一般情况下一个 ASP 包含以下几个部分:(1)普通的 HTML 文件。(2)客户端的 Script 程序代码,放置于和标签之内。(3)服务器端的 ASP Script 程序代码,放置于标签之内。(4)Server Side I
13、nclude 语句,即使用#Include 的语法在本页面嵌入其他的 Web页面。ASP 的服务器会将其原封不动的发送到客户端,由客户端的浏览器进行处理。目前在 ASP 中可以使用的脚本语言主要是 VBScript 和 Jscript,其中系统默认的脚本语言为 VBScript。不过任何一个可以和 ActiveX Script 标准兼容的脚本语言引擎都可以很好地应用于 ASP 之中。1.2.4ASP 内部 6 大对象ASP 提供了 6 个功能强大的内部对象,每个对象具有各自的属性(Property) 、方法(Method) ,有的还拥有数据集合(Collection)与事件(Event) ,它
14、们共同完成 Web 中的一些重要工作。这 6 个对象及其功能描述如表 2.1 所示。对象名称 功能描述Request 从客户端取得信息Response 将信息送给客户端Server 提供一些 Web 服务器工具Session 储存在一个 Session 内的用户信息,该信息仅可被该用户访问Application 在一个 ASP-Application 中让不同的客户端共享信息ObjectContext配合 Microsoft Transaction 服务器进行分布式事务处理表 2.1 ASP 内部 6 大对象及其功能合理地运用这些对象可以使原本复杂,烦琐的工作变得简捷而条理清晰。我们可以用以下
15、的语法直接使用这些对象:对象/属性/方法/数据集合1.2.5 Global 文件每一个以 Active Server Pages 为基础的应用程序都拥有一个 Global.asa 文件(ASA 后缀名其实是 Active Server Application 的缩写) ,它位于每一个应用程序的基点目录之下。当 Active Server Pages 做下面两个动作时,Server 便会去读 Global.asa 文件:1.Web Server 启动之后,一个应用程序目录中任一个 ASP 文件被提出第一个 HTTP 请求(Request)时。 2.不具有任何 Session 的客户端向 Serv
16、er 请求一个 ASP 文件时。前面已经提到 Application 和 Session 这两个 ASP 的内部对象。Application对象内的信息供所有正在执行该应用程序的用户分享,它创建于 Web Server 启动后一个应用程序中任一 ASP 文件被提出第一个 HTTP 请求时,结束于 Server 端停止运行。而 Session 对象仅属于一位用户,维持一个用户端的信息,其他用户无法访问,它创建于一个不具有 Session 的用户向 Server 请求一个 ASP 文件时,结束于该 Session 到期(即用户端超过某时间段没有向 Server 提出要求或刷新 Web页面)或 Ab
17、andon 语句的调用。可见,Global.asa 文件的调用与 Application 与Session 这两个对象密切相关。事实上我们通常在 Global。asa 文件中写入以下内容:1Application 或 Session 的开始事件(Start-event) 。2Application 或 Session 的结束事件 (End-event)。这样,在一个 Application 或 Session 对象被创建或结束时,系统会自动完成 Global.asa 文件中写入的相应事件。值得注意的是,如果一个 Application 与一个 Session 同时开始,Active Serve
18、r Pages 会先处理 Application 的开始事件,而如果一个 Application 与一个 Session 同时结束,Active Server Pages 则会先处理 Session 的结束事件。1.3 利用 ADO 访问数据库ADO(ActiveX Data Objects)是一种操作 Microsoft 所支持的数据库的新技术。在 ASP 中,ADO 可以看作是一个服务器组件(Server Component),更简单点说,是一系列的对象,应用这些功能强大的对象,即可轻松完成对数据库复杂的操作。本文中个性化页面的实现便大量地用到了 ADO 技术。具体的操作步骤可以归纳为以下
19、几步:13.1 创建数据库源名(DSN)DSN(Date Source Name)即数据源名称。我们知道,ODBC 是一种访问数据库的方法,只要系统中有相应的 ODBC 驱动程序,任何程序就可以通过 ODBC 操纵驱动程序的数据库。比如我们系统中有 Access 的 ODBC 驱动程序,那么即使我们没有 Access 软件,也可以在我们的程序中对一个 Access 的 MDB 数据库加、删、改记录。而且我们根本不用知道这个数据库是放在哪里的。我们只要写出 SQL 语句,ODBC 驱动程序就会帮我们做一切事情。我们在给 ODBC 驱动程序传 SQL 指令时,即是用 DSN 来告诉它到底操作的是哪
20、一个数据库。如果数据库的平台变了,比如我们改用了 SQL Server 的数据库,只要其中表的结构没变,我们就不用改写我们的程序,只要重新在系统中配置 DSN 就行了。由此可见,DSN 是应用程序和数据库之间的桥梁。1.3.2创建数据库链接(Connection)链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。ASP 文件中如果要访问数据,必须首先创建与数据库的链接,其语法如下:set Conn=Server.createObject(“ADOBD.CONNECTION”)这条语句创建了链接对象 Conn,接下来:connstr=“Provider=Microsoft.Jet
21、.OLEDB.4.0;Data.Source=“管 理 界 面还 没 有 任 何 信 息“elsetotalPut=rs.recordcounttotalPut=rs.recordcountif currentpagetotalput thenif (totalPut mod MaxPerPage)=0 thencurrentpage= totalPut MaxPerPageelsecurrentpage= totalPut MaxPerPage + 1end ifend ifif currentPage=1 thenshowpagesshowContentshowpageselseif (c
22、urrentPage-1)*MaxPerPage ID 号类 型信 息 名 称修 改删 除“修 改“删 除=MaxPerPage then exit dors.movenextloop% 添加信息“response.write “exit subend ifdim kresponse.write “ 信息分页 “for k=1 to nif k=currentPage thenresponse.write “+Cstr(k)+“ “elseresponse.write “+“+Cstr(k)+“ “end ifnextresponse.write “ 创建信息“response.write “
23、end sub%1.3.4 添加信息页1Add.asp 页面示例图为添加信息所看到的页面效果。1 页面中需要用户填写 HTML 的表单元素 该页面中共有 8 个表单元素,如下表所示名称 表单元素类型 含义 最大长度txttitle text 信息名称 70txturl text 连接地址 70typename list 信息类型txtcontent textarae 信息说明 350big text 信息大小 10vote radio 信息评价from text 相关主页 10fromurl text 相关地址 702 页面所涉及的数据库表信息此页仅向系统提交信息记录,并没有涉及到数据库表的操作。3 页面代码分析信息查询系统信息添加界面添 加 信 息 信息名称:链接地址:信息类型:国内信息国外信息热点信息工具信息其他类别信息站内信息站外信息信息说明:信息大小:信息评价: 相关主页: