




已阅读5页,还剩57页未读, 继续免费阅读
(计算机应用技术专业论文)基于web的高校科研管理信息系统的设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
攘嫠 摘要 随着i n t e r a c t 豹逐速普及帮发展,w e b 技寒与数据瘁技术的结合使 得传统的管理信息系统的开发模式发生了很大的变革。本文对分布式动 态w e b 应用系统懿不同开发方案和技术进行了系统赡分拼,结食赢校科 研管理的具体需求,提出了以后台数据库设计和w e b 应用程序设计为构 建惠发点能管理信息系统酶开发方案尊本文所截麓主要研究工作如下: 1 通过对系统进行需求分析,规划系统的性能目标和功能鼹标, 确定搭建系统所需的软件环境,同时提出系统所采孀的体系结构船摄据 实际要求将系统划分为五大模块:科研任务管理、项目管理、成果管理、 学术活动帮项嚣发布尊 2 针对高校科研管理的特点,设计出后台数据库表的结构及其相 关联系。逶过s q ls e r v e r 的数据瘁对象和数据痒技术来优化数据瘁髂运 行性能尊通过建立数据库连接池来提高数据库的访问效率;建立索引以 提嵩数据的查询速度;设计存储过程减少辩络流量,提高系统嚣执行效 率。 3 针对系统已确定的体系藜梅帮包含翡功麓模块,详细介绍了吝 模块的实现细节口通过采用j s p + j d b c 的w e b 数据库编程模式来完成对 各大功能模块的构建。在实现中,对j s p 页面中的中文字符处理阍题、 表格数据传递问题、通过j a v a s c r i p t 脚本对数据进行查错等问题都做了具 体的讨论尊 无论是从管理信息系统发展的要求还是从计算机技术发展的推动来 看,建立基于w e b 斡管理蔼惠系统己藏为管疆信崽系统发展的鍪然趋势。 本系统的实现搭建了离校科研信息管理的交互平台,使其用户可以更加 方便、快捷、准确的实现科研管理经务,麸磊对傺障科研工作鲍颥剥开 展起到了积极的作用。 关键词:管理信息系统;眠b ;数据库;b s 结构 a b s t r a c t a b s t r a c t w i t hd e v e l o p m e n to fi n t e r n e t 。t h ec o m b i n eo fw e bt e c h n i q u ea n d d a t a b a s et e c h n i q u em a k eg r e a tc h a n g eo nt h et r a d i t i o n a ld e v e l o p m e n tm o d eo f m a n a g e m e n ti n f o r m a t i o ns y s t e m ( m i s ) ,n l e d i s s e r t a t i o nd i ds y s t e m i c a n a l y s i so nt h ed i f f e r e n td e v e l o p m e n ts c h e m eo fd i s t r i b u t e dd y n a m i c 脯b s y s t e m t os e r v eu n i v e r s i t ys c i e n t i f i cr e s e a r c hm a n a g e m e n t ,as c h e m ew a s g i v e nt od e v e l o pm i sb a s e d o nd a t a b a s ed e s i g na n dw 毫ba p p l i c a t i o nd e s i g n t h em a i nr e s e a r c hw o r kw a sa sf o l l o w s : 1 t h r o u g ha n a l y z i n gt h ed e m a n d so ft h es y s t e m ,t h ef u n c t i o no ft h e s y s t e mw a sm a r k e do u t ,t h es o f t w a r ee n v i r o n m e n tw a sc o n f i r m e d ,a n dt h e a r c h i t e c t u r ew a sd e c i d e d f o rp r a c t i c a l i t y , t h es y s t e mw a sc o m p o s e do ff i v e m o d u l e s :t h et a s km a n a g e m e n to fs c i e n t i f i cr e s e a r c h ,t h ep r o j e c tm a n a g e m e n t , t h er e s u l tm a n a g e m e n t ,a c a d e m i ca c t i v i t ya n dp r o j e c tp u b l i c i z i n g 2 t h es t r u c t u r ea n dt h er e l a t i o n s h i po fd a t a b a s e t a b l ew e r ed e s i g n e d f o rt h ec h a r a c t e r i s t i c so fu n i v e r s i t ys c i e n t i f i cr e s e a r c hm a n a g e m e n t t h e r u n n i n gc a p a b i l i t yo fd a t a b a s ew a so p t i m i z e dt h r o u g ht h ed a t a b a s eo b j e c t so f s q ls e r v e ra n dd a t a b a s et e c h n i q u e ,s u c ha se s t a b l i s h i n gd a t a b a s ec o n n e c t i o n p o o lt oi m p r o v et h ea c c e s s i n ge f f i c i e n c y o fd a t a b a s e ;s e t t i n gi n d e x e st o i n c r e a s et h eq u e r ys p e e do fd a t a ;d e s i g n i n gs t o r e d p r o c e d u r et od e c r e a s et h e n e t w o r kf l u x 3 s i n c et h ea r c h i t e c t u r ea n dt h ef u n c t i o no ft h em o d u l e sh a db e e n d e c i d e d t h ed i s s e r t a t i o nd e s c r i b e dt h ee s t a b l i s h i n go fe a c hm o d u l ei nd e t a i l t h e yw e r ea l lb e e ne s t a b l i s h e db yt h ep r o g r a mm o d eo fj s p + j d b c t h e r e w e r ea l s oi nt h ed i s s e r t a t i o na b o u th o wt od e a lw i t ht h ec h i n e s ec h a r a c t e r si n j s p ;h o wt ot r a n s m i tf o r md a t aa n dh o wt ot e s tf o rb u gb yj a v a s c r i p t 。 e i t h e rf o rt h er e q u i r e m e n to fd e v e l o p m e n to fm i s ,o rf o rt h ea d v a n c eo f c o m p u t e rt e c h n o l o g y , i tb e c o m e si n e v i t a b l e t r e n dt oi m p r o v em i st h r o u g h b a s i n go nw e b t h es y s t e mh a sb u i l tt h e i n t e r a c t i v ep l a t f o r mo fu n i v e r s i t y i n f o r m a t i o nm a n a g e m e n to fs c i e n t i f i cr e s e a r c h t h es c i e n t i f i c r e s e a r c h m a n a g e m e n tt a s kc a nb ec o m p l e t e dm o r ec o n v e n i e n c e ,f a s ta n da c c u r a t e ,a n d s ot h es c i e n t i f i cr e s e a r c hw o r kc a nb em o r ew e n tw e l l k e y w o r d s :m i s ;w e b :d a t a b a s e ;t h ea r c h i t e c t u r eo fb s 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除文中已经标明引用的内容外, 本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对 本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本入承担。 学位论文作者签名:捌书 l 加年p 月如日 学位论文版权使用授权书 本学位论文作者完全了解我校有关保留、使用学位论文的规定, 即:我校有权保留并向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅。本人授权武汉工程大学研究生处可以将本学位 论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩 印或扫描等复制手段保存和汇编本学位论文。 保密0 ,在年解密后适用本授权书。 本论文属于 不保密q ( 请在以上方框内打“ ) 学位论文作者签名:叫争 神7 年f 月加日 指导教师躲弼彳 御年陟月如曰 第1 章绪论 课题的冒的与意义 第 章绪论 管理信息系统是用系统思维的方法以计算机和现代通信技术为基 本信息处理手段和传输工具的、能为管理决策者提供信息服务的人机系 统。它是一个能够进行信息的收集、传递、存储、处理、维护和使用的 人机系统。现代网络技术和数据库技术的应用保证了系统中的数据具有 高度的一致性和共享性。 本课题作为一种网络化管理信息系统,主要是w e b 与数据库的集 成,并加以一定的安全措施而构建起来的分布式动态w e b 应用系统。 目前借助于w w w 通过动态的交互式信息发布,使诸如网上购物、o 网, 上交易、在线支付等一系列电子商务服务系统得以盛行。这些系统都离 不开分布式的数据库、与用户及后台数据库交互的动态w e b 应用程序、 安全措施等技术。本系统的设计也是在这方面的一种尝试。对该系统进 行扩展后能够应用于很多领域,如航空、铁路部门的定票查询系统;商 业部门的商品信息发布系统;教育部门的远程教育系统等等。这将充分 发挥w w w 超文本、超链接、超媒体的特点以及大型数据瘴系统易于 对数据进行管理和组织的特点,同时又利用i n t e r n e t 这个世界上最大的 通信网来展牙自身的营销业务和对自身的宣传,使企业及其它各部门从 传统的时间和空间的制约条件中解脱出来,进行更有效、更迅速的生产 活动和商业活动。随着i n t e r n e t 迅速发展和普及,分布式动态w e b 应用 系统的开发和应用必将给众多企业带来无限的商机,使人们的日常生活 发生根本的改变,从丽最终将推动经济的繁荣和社会的发展。 武汉工程大学计算机科学与工程学院科研管理信息系统的研发,正 是希望以计算机学院为实例,构建适合于普通高校院、系使用的科研管 理信息系统。通过建立网络化的管理信息系统,全面推进高校院系的科 研工作,有效促进高校科研规模的不断扩大和科研水平的不断提高,规 范科研管理,并以此推进教学水平、质量的提高和教学内容、方式的改 武汉工程大学网等学历顼:| :学位论文 革,加快院系学科与专业建设。同时通过l 句j l - 发布各院系的科研信息, 推广及加强与其它教育部门和企业单位的交流与合作e 。2 研究现状与发展趋势 i n t e r n e t 是一个将世界各种不同计算机网络连接起来的全球性网 络,随着它的应用的迅速发展和普及,信息技术正极大地改变着人类的 生活和工作方式。w w w 是一种建立在i n t e m e t 上的多媒体集合信息系 统。它利用超媒体( h y p e r m e d i a ) 的信息获取技术,通过超文本 ( h y p e r t e x t ) 的表达方式,将所有在w w w 上的信息资源,如静态图 像、文本、声音、影像及其它各种多媒体数据有机的结合起来,使用户 能够通过浏览器在i n t e r n e t 网上查询已建立在w w w 服务器所有站点上 的超媒体文件。虽然w w w 采用网型信息搜索,能从某一地点到达网 络的其它任何地点,但是它很少有数据检索机制,特别是基于内容和基 于结构的检索。在w e b 服务器中,数据是以文本或图像存储的,它的 这种数据存储方式必然导致查询速度很慢,不能像数据库管理系统那 样,易于对存储的数据进行组织和维护。 另一方面,对于支持客户机j j 及务器模式的数据库管理系统( 如: o r a c l e 、s y b a s e 、i n f o r m i x 、s q ls e r v e r 等) ,其技术己相当成熟,并且 广泛用于各个信息领域。它们提供多种功能,可使多个应用程序和用户 用不同的方法在同时或不同时刻去建立,修改和查询数据库,而且访问 速度快。用户通过d b m s 访问数据库中的数据,以保证数据库的安全 性和完整性。这些数据痒往往采用p b 、v b 、v c 、d e l p h i 等软件作为它 的前台界面,但这些软件由于缺乏超文本表达,在网络环境下使用,不 能以w w w 作为背景支持。 因此,如果将w w w 与数据库结合起来,就可将w w w 与数据库 的所有优点集中在起,使得计算机系统同时具有数据库功能,网络功 能,多媒体功能和超文本功能,从而极大地提高了整个计算机系统的性 能,其主要表现在: ( 1 )实现了数据库内部数据之间的超文本链接。连接转换程序能 第1 章绪论 够把数据库中数据转换为超文本链接。用户可以直接根据w w w 统一 资源定位器( u r u 经由连接转换程序存取任何数据库元素,因此整个数 据库可被转换为巨大的超文本系统,这些超文本链接可以连接到数据库 的其它元素,从而为相互闻有联系的数据提供了一种相互跳转的简单方 法。 0 ) 通过链接到w e b 其它形式的文档上,可以很方便遗把数据库 中的数据同w e b 上其它文档集成在一起,从而形成一个具有超文本超 链接功能的扩展了的超媒体数据瘴管理系统。这个系统不仅可以管理传 统数据库内部的数据元素,而且可以管理w e b 上与其链接的其它超媒 体数据。 ( 3 ) 通过连接到其它使用类似连接转换程序的数据库或类似的接 口,能够提供一个跨越数据库连接的简单机制。 ( 4 ) 可以运用数据库系统的检索机制迅速方便地查询与数据库数+ 二: 据有链接关系的w w w 上的其它文档和数据。 总之,w w w 和数据库的连接,形成了一个广域的、分布的、i 有 序的、可以迅速检索查询并根据链接条件相互跳转的数据库系统集畲: 1 3 主要研究内容 本课题针对高校科研管理信息系统的设计要求,提出了整个分布式 动态w e b 应用系统的开发方案。主要的研究内容包括以下四部分: ( 1 )通过对现有分布式动态w e b 应用系统不同开发技术的分析和 探讨,并结合课题的实际情况和要求,提出了本课题中所采用的w e b 应用系统的体系结构、数据库访问策略、接口技术以及对数据库安全性 的会绍。 ( 2 ) 分布式动态w e b 应用系统总体结构设计。通过对系统进行需 求分析,规划系统的性能尽标和功能圈标,确定搭建系统所需的软件环 境,根据实际要求进行系统功能模块的设计。 ( 3 ) 分布式动态w e b 应用系统后台数据库构建的研究。主要包括: 针对高校科研管理信息的特点,设计出后台数据库表的结构及其关联关 武汉工程大学网等学历硕士学位论文 系。通过s q ls e r v e r 的数据库对象和数据库技术来优化数据库运行性 能,改善数据库结构,并为此进行分析和讨论,提出并实现了相应的解 决方案。 鳓分布式动态w e b 应用系统w e b 应用程序的开发与研究。根据 系统的设计要求,w e b 应用程序分为五大功能模块:科研任务管理、项 目管理、成果管理、学术活动和项冒发布。由于不同程序模块功能及安 全性要求的不同,设计出了相应的开发方案,以使各个程序模块能够很 好地实现各自功畿并且效率较高。 第2 睾分毒式动态w e b 应瑗系统 第2 章分布式动态w e b 应用系统 2 1分布式动态w e b 应用系统的体系结构 随着计算机技术的不断发展与应用,可视化开发工具的普及与推 广,计算模式从集中管理式转向了分布式,c l i e n t s e r v e r 两层结构成为 了局域网环境中m i s 应用系统的主流结构。它要求服务器与客户机负 荷均衡,使客户端p c 的处理能力能够得到充分发挥,很多工作可以在 客户端处理后再提交给服务器,因此客户端响应速度较快。但是传统的 c l i e n t s e r v e r 结构的软件需要针对不同的操作系统开发不同版本的软 件,巨大的投资、高昂的维护成本、低效率使其已不适应现代工作的需 要。 近年来,由于i n t e r n e t 技术的流行,尤其是基于w e b 的信息发布和 检索技术、j a v a 计算技术以及网络分布式对象技术的飞速发展,推动了 很多应用系统的体系结构设计从单一的两个层次扩展到由客户、应用服 务器、数据库服务器组成的三层结构,即b r o w s e r s e r v e r 体系结构。在 这种结构下,数据及应用可通过不同平台、不同网络存取,与操作系统 无关,伸缩性大。b r o w s e r s e r v e r 结构有以下特点【1 】: 开放的标准:b r o w s e r s e r v e r 所采用的标准都是开放的、非专 用的,是经过标准化组织所确定而非单一厂商所制定的,保证了其应用 的通用性和跨平台性。 较低的开发和维护成本:只需在客户端装有通用的浏览器即可, 维护和升级工作都在服务器端进行,不需对客户端进行任何改变,大大 降低了开发和维护的成本。 使用简单,界面友好:用户使用单一的浏览器软件,通过鼠标 点击即可访问文本、图像、声音、视频等数据库中信息,特别适合非计 算机人员的使用奇 客户端消肿:客户端不再负责数据库的存取和复杂的数据计算 等任务,只进行显示,充分发挥了服务器的强大功能,这样大大降低了 对客户端的要求,客户端变得非常“瘦 。 武汉1 程人学日等学历碰 学位论i 系统灵活:b o w s e r s e r v e r 系统的三部分模块各自相对独立, 其中一部分模块改变时,其它模块不受影响,系统改进变得非常容易, 且可以用不同厂家的产品来组成性能更佳的系统。 保障系统的安全性:b r o w s e r s e r v e r 系统在客户机与数据库服 务器之间增加了一层w e b 服务器,使两者不再直接相连,客户机无法 直接对数据库操纵,有效地防止用户的非法入侵。 本质上,b r o w s e f s c i 、,c r 是一种由传统的二层c l i e n t s e r v e r 结构 发展而来的三层c l i e n t s e r v e r 结构在w e b 上应用的特例。在 b r o w s e r s e r v e r 的系统中,用户可以通过浏览器向分布在网络上的其 它服务器发出请求。b r o w s e r s e r v e r 结构极大的简化了客户机的工作, 客户机上只需安装、配置少量的客户端软件即可,服务器将担负更 多的工作,对数据库的访问和应用程序的执行将在服务器上完成。 这种模式在逻辑上将应用功能分为三个相对独立的单元:表示层 ( b r o w s e r ) 、功能层( b u s i n e s sl o g i c ) 、数据层( d a ms e r v i c e ) ,如 图2 - 1 所示i2 i : 曼誊一曼昌、一 百面应摹、一一 br o w s er 试 o ,兰兰! ! ! l 托趣度取 艋 圈2 - 1 第一层是表示层,对应w e b 浏览器。在表示层中包含系统的显示 逻辑,位于客户端。它的任务是由w e b 浏览器向网络上的某一w e b 服 务器提出服务请求,w e b 服务器对用户身份进行验证后通过h 兀p 协议 把所需的页面传送给客户端,客户机接受传来的页面文件,并把它显示 在w e b 浏览器上。 第二层为功能层,对应具有应用程序扩展功能的w e b 服务器。在 功能层中包含系统的事务处理逻辑,位于w e b 服务器端。它的任务是 接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连 接,通过s q l 等方式向数据库服务器提出数据处理申请,然后等数据 库服务器将数据处理的结果提交给w e b 服务器,再由w e b 服务器传送 第2 章分布式动态w e b 应嬲系统 回客户端。 第三层是数据层,对应数据库服务器。在数据层中包含系统的数据 处理逻辑,位于数据库服务器端。它的任务是接受w e b 服务器对数据 库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提 交给w e b 服务器。 在三层结构中,数据计算与数据处理集中在功能层w e bs e w e r + t r a n s a c t i o ns e r v e r l 3 1 。由于功能层被独立出来,这样客户机的压力大大 减轻了,把负荷均衡地分配给了w e b 服务器。这种结构不仅把客户机 从沉重的负担和不断对其提高的性能的要求中解放出来,也把技术维护 人员从繁重的维护升级工作中解脱出来。由于客户机把事务处理逻辑部 分分给了功能服务器,不再负责处理复杂计算和数据访问等关键事务, 只负责显示部分,所以维护人员不再为程序的维护工作奔波于每个客户 机之间,而把主要精力放在功能服务器上程序的更新工作。这种三层结 构使层与层之间相互独立,任何一层的改变不影响其它层的功能。从管 理的角度来看,程序代码的维护、数据库的备份,虽然可以在服务器端 执行,但这种三层结构对网络带宽是有一定要求的,因为客户端每次要 求获取的数据和反馈信息都要通过网络与服务器联系峨 2 2 分布式动态w e b 应用系统的数据访问策略 分布式动态w e b 应用系统区别于以往的w e b 应用系统,最关键的 特征是数据的动态发布。早期的w e b 应用大都集中在文件服务方面, 如霸瞪、g o p h e r 、e m a i l 等方面,而静态w e b 页面越来越不能满足当今 社会对于信息服务的动态性、实用性和交互性的要求。随着数据库功能 的匿趋成熟,w e b 的分布式特性使之可以成为一种良好的数据库应用平 台,因此,将w e b 技术与数据库技术相结合,开发动态网络数据库系 统,就成为当今高速发展的信息社会对计算机应用的追切要求。 因为把c l i e n t s e r v e r 应用移植到w e b 下,可以充分享受w e b 带来 的好处,所以很多开发商都提供了通过浏览器对w e b 服务器和数据库 进行交互访问的多种策略。围绕浏览器,可大致分为以下三种类型 武汉工程犬学弱等学历硕士学位论文 2 2 1纯h t m l 模型 纯t i t m l 模型对于w e b 用户来说是一种最普通的访问方式,同时 也提供了功能上最简单的客户方软件。服务程序通过标准的h t m l 、j a v a s c r i p t 或两者结合形成用户接口。w e b 服务器实现在客户方和服务器之 间的所有交互操作,而组件被用来提高处理效率。服务器利用c g i 脚本、 i s a p i 、i d c 或j a v a 等来生成基于数据库信息的h t m l 文件。如图2 2 所示: 图凇纯i t t m l 模型 组件是负责管理w e b 服务器和数据库服务器之间的通信,并提供 应用程序服务,它能直接或调用外部程序或脚本代码来访问数据库,因 此,可以提供与数据库相结合的动态h t l v i l 页面,将用户的查询结果 格式化为t i t m l 页面,通过w e b 服务器返回给用户浏览器。 2 2 2 混合组件模型 混合组件模型是指服务器利用h 蹦l 语言实现界面,同时通过使 用a c t i v e x 组件、j a v a 组件或两者相结合来实现界面中的窗体。客户 方不需要任何数据库驱动程序,但是用户需要对这些组件进行下载,以 使客户端的功能趋于完善。它的缺点是:不是所有的浏览器都支持不同 的组件。如图2 3 所示: , 、 a c t i v e x w e b , w e b 。n 。 服务器 数据库 测览器 1 7 、,1 7 n 瞻复舆苄游 圈2 - 3 混合组韩模型 第2 章分布式动态w e b 应煺系统 混合组件技术包括j a v aa p p l e t 、j d b c 掣刚。 ) j a v aa p p l e t :j a v a 是一种应用软件开发平台,提供可移植的、 可解释的、简单的、面向对象的高性能编程语言和运行的环境。j a v a 计 算模式的本质是客户朔疑务器模式。由予应用软件一般常驻在服务器中, 只按需提供,因此,所有管理工作都可集中由服务器完成,而用户则总 是能保证利用最新版本的应用软件。 ( 2 ) j d b c j d b c ( j a v ad a t a b a s ec o n n e c t i v i t y ,j a v a 数据库连接) 是一种用于执行s q l 语句的j a v a a p i ,可以为多种关系数据库提供统一 访问。它由一组用j a v a 语言编写的类与接口组成。j d b c 已成为一种供 工具数据库开发者使用的标准a p i ,用户可以用纯j a v aa p i 来编写数据 库应用。使用j d b c 可以很容易地把s o l 语句传送到任何关系型数据 库中。j a v a 与j d b c 的结合使程序员可以只写一次数据库应用软件后, 就能在各种数据库系统上运行。j d b c 扩充了j a v a 的应用范围。 2 2 3 r a d ( r a p l da p p il c a t i o nd e v e l o p m e n t ) 工其模型 r p j 3 工具模型通过利用一些插件,如a c t i v e x 控件,可以在浏览 器中显示出r a d 工具窗体,由于要求用户可以直接访问数据库,所以 用户需要除插件或控件以外的数据库驱动程序,这样就导致了这种方法 比其他方法更加庞大。如图2 4 所示: 圈撕爻纽工其模型 传统的r a d 工具,如p o w e rb u i l d e r 、v i s u a lb a s i c 、 o r a c l e d e v e l o p m e n t2 0 0 0 是大家广为熟悉的。b o r l a n d 公司的i n t r a 武汉王程大学鄹等学历硕士学位论文 b u i l d e r 把i n t e r n e t 技术融x d e l p h i3 0 中。而p o w e r b u i l d e r 增加的i n t e m e t d e v e l o p m e n tk i t 使p b6 0 的i n t e r n e tw e b 技术更加突出。r a d 工具的 主要特点是具有图形开发界面和可视化计算技术的支持,程序员只需通 过简单的鼠标点击和键盘交互操作,即可快速生成应用程序代码。 2 。3 分布式动态w e b 应用系统的数据库接口技术 目前w e b 与数据库的接口技术常见的有c g i 、i s a p i 、ta s p a d o 、 j s p j d b c 等几种主要的技术。 2 3 1c gi ( c o m m o ng a t e w a yin t e r f a c e ) c g i ( c o m m o n g a t e w a yi n t e r f a c e :公共网关接1 2 1 ) 7 1 定义了一种有 关环境变量的组合、标准输入流和标准输出流的接口规范。当浏览器向 w e b 服务器发出请求时,服务器通过执行一个外部程序来处理这一应用 要求。一般来说,一个c g i 程序的功能就是在超文本文件与w e b 服务 器应用程序之闻传递信息。应用在w e b 数据库上,它可以实时、动态 地生成h t m l 文件,根据用户的需求输出动态的信息,把数据库服务 器中的数据作为信息源对外提供服务,将w e b 服务和数据库服务结合 起来。 作为w e b 浏览器和服务器之间传递信息的通道,c g i 是允许w e b 服务器运行能够生成h t m l 文档并将文档返回w e b 服务器的外部应用 程序规范。遵循c g i 标准编写的服务器端的可执行应用程序都被称为 c g i 程序,它用在客户机的浏览器和w e b 服务器间进行交互操作,另 外还可通过数据库编程接因与数据库胃畏务器等外部数据源进行通信。 c g i 程序可以由任何一种语言编写,并且可以在以下的系统中执行: c c + + 、f o r t r a n 、任何的u n i xs h e l l 、v i s u a lb a s i c 和a p p l e s c r i p t 等。 c g i 程序通常是一个可执行文件。c g i 程序的执行一般有两种调用 方式:一种是通过u r l 直接调用;另一种方式,也是主要的调用方式, 是通过交互式主页里的f o r m 表单调用,通常都是在用户填完表单所需 第2 章分布式动态w e b 应增系统 的信息后按确认按钮启动c g i 程序。c g i 主要的功能不外乎在w e b 服 务器应用程序和c g i 程序之间传递信息陵。外部c g i 程序通过环境变量、 命令行参数、标准输入输出与w e b 服务器进行通信,传递有关参数和 结果。 环境变量:当服务器守护进程创建子进程运行c g i 程序时,设置 相应的环境变量和命令行参数,用以传递客户端与服务器的有关信息给 该子进程。 命令行参数:命令行参数仅在h t m l 文档中有i s i n d e x 查询的情 况下使用。 标准输入输出:当哪请求方式为p o s t 时,c g i 程序通过标 准输入流和有关环境变量来获取客户端的传输数据;如采用g e t 方式 时,c g i 程序则直接通过环境变量获取客户端的信息。当c g i 程序要返 回处理结果( 一般为h t m l 文档) 给客户端时,它通过标准输出流将 该结果数据传递给服务器守护程序。 : c g i 程序访问w e b 数据库的主要流程是陵:客户端通过w e b 浏览 器向h t m l 的表单( f o r m ) 输入所需的查询信息,并将表单数据用页 面中的提交按钮提交给w e b 服务器,服务器将表单数据和客户信息置 于一组环境变量( 如q u e r ys t r i n g 等) 或标准输入中,然后调用服 务器端的c g i 程序,c g i 程序即可以通过这些环境变量或标准输入获得 客户端的信息,再将相应的参数转换为适当的s q l 语句,把查询条件 送给数据库服务器,依据它对数据库进行操作,把查询结果生成h t m l 的格式,最后通过w e b 服务器送回到客户端供浏览器显示。c g i 实现 w e b 与数据库互连模型如下图2 。5 所示: 环境变量 。 、, w e b1 r c g l ,、 命令行参数。 、一 服程 s o l 。 w e b 一叶- 呻 务 标准输入 。 数据库 序 测览器 标准输出 器 圈鲻c g i 实现w e b 与数据库霞连 武汉工程大学网等学历硕士学位论文 c g i 程序运行环境的可选性较大,除了在u n i x 操作系统上c e r n 或n c s a 格式的服务器上运行,在其它操作系统( 妇w i n d o w s 、w i n d o w s n t 等) 的服务器上也广泛地使用c g i 程序,同时它也适用于各种类型 机器。c g i 程序的缺陷在予c g i 的应用程序一般都是一个独立的可执行 程序,和w e b 服务器各自占据着不同的进程,而且一个c g i 程序只能 处理一个用户请求。这样,每有一个用户请求,就会激活一个服务器端 的c g i 进程,当客户端用户请求数量非常多时,会挤占大量的系统资源, 造成效能低下,w e b 服务器的性能也随着急剧下降,运行速度非常慢。 2 3 2i s a p i ( i n t e r n e ts e r v e ra p p ;c a t i o np r o g r a mi n t e r f a c e ) 针对c g i 程序运行效率低下的问题,w e b 服务器开发商提出w e b 服务器端专用的应用程序编程接口a p i ( a p p l i c a t i o np r o g r a mi n t e r f a c e ) 来扩展w e b 服务器的功能,客户机可以通过这些a p i 完成c g i 程序所 实现的功能。 a p 圣通常以动态连接库( d l l ) 的形式提供,是驻留在w e b 服务器上 的程序,因此所有的w e b 服务器进程都能够直接调用这些a p i ,开发人 员可以利用a p i 写出w e b 服务器与数据库的接四程序以实现它们的互 连【9 1 。但直接应用a p i 编程比较困难,开发a p i 程序需要多线程、进程 同步和底层协议等知识。为解决复杂和高效之闻的矛盾,m i c r o s o f t 公司 提供了基于a p i 的高级编程接口i n t e m e t 数据库连接器i d c ( i n t e m e t d a t a b a s ec o n n e c t o r ) 。 i d c 是m i c r o s o f t 的w e b 服务器i i s 的一个动态连接库h t t p o d b c d l l , 它是建立在i s a p i 基础之上,通过开放式数据库互连o d b c ( o p e n d a t a b a s ec o n n e c t i v i t y ) 接口访问各种数据库。i d c 通过编写两类文件实 现动态w e b 数据库的应用。它们是i d c 脚本( 。i d c ) 文件和h t m l 模 板( h t x ) 文件。i d c 文件用来控制访问数据库,它包括o d b c 数据源 名、用户名及墨令和s q l 语句等数据库连接参数,还包含相应的h t m l 模板文件的名称和位置【1 0 l 。h t m l 模板文件实际是h t m l 文档的模板, 是对h t m l 的一种扩展,用于构造输出的w e b 页面,它定义了如何将 数据库查询结果嵌入到h t m l 文档。对于任何一个w e b 数据库的应用 ,第2 章分毒式动态w e b 应嬲系统 都需要一对i d c 脚本文件和h t m l 模板文件,而且i d c 脚本必须放在 w e b 服务器上,而h t x 文件则可放到任何w e b 服务器能够访问到的地 方。i d c 具体运行流程如下1 1 1 】: ( 1 )客户端测览器通过秘珊发出请求,w e b 服务器薹薹s 接收到 请求后,分析文件的扩展名,如为i d c ,则交予i d c 接口模块处理。 ( 2 ) l 重s 装载h t t p o d b c d l l ,分析u r l 蜃带的参数并提供 h t t p o d b c d l l 。 ( 3 ) h t t p o d b c 。d l l 读取i d c 脚本文件提供的信息,并将s q l s t a t e m e n t 中需由f o r m 表单替换的信息进行代替,拼接成一个完整的 s o l 语句。 ( 4 ) h t t p o d b c d l l 装载数据库的o d b c 驱动程序,并与数据库建立 连接,连接成功后就把完整的s q l 语句提交给数据库驱动程序供其生 成查询结果。 ( 5 ) 执行完s o l 语句之后,h t t p o d b c d l l 读取i d c 脚本文件中指 定的h t x 文件,然后用h t m l 模板文件中的标志控制生成由数据库结 果组成的h t m l 文件。h t t p o d b c d l l 将生成页面发回i i s ,再由1 1 s 返回 客户端浏览器。 i d c 实现w e b 与数据库互连的结构图如图2 6 所示: 名护机( w e b 溯览罱) ij6 ( h t t p 文昔) 1 1 鞭t t d l i i s ( x v e bi l i a m ) l 。6 l i h t xlazfq=i 毒2 ( i s a p i )l 5 h t t p o d b c ,t i l l 1 3 惫s q l 凝溻臻妇屠) | 国c 辫|,4 ( s q l 秣) i o d b c l 辍馐孽孽i 霞b 骄 、 雕2 - 6i d c 魉飘两与誊重醺翻目窿 武汉_ i 程大学阏等学历硕士学位论文 i d c 可以连接所有支持o d b c 的数据库系统。由于h t x 文件的流 程控制比较简单,不能产生一些较为复杂的主页,而且它只能对数据库 进行操作,不能对w e b 服务器的其它文件进行操作,所以i d c 方案较 适于设计一些具有固定格式的简单w e b 数据库的应用。通过掌握h t m l 常识和基本的s o l 语法,使用m i c r o s o f tf r o n t p a g e 等可视化h t m l 编 辑王具,就可以方便、直观地设计i d c 和h t x 文件h 2 1 。i d c 是针对特 定w e b 服务器( i i s ) 专用的a p i 函数而设计的,因而它的执行效率较 高,占用系统资源较少,充分利用了w e b 服务器自身的性能。但由于 它的专用性,使它很难移植到其它的w e b 服务器上。 2 3 。3a s p ( a c t i v es e r v e rp a g e ) a s p 即活动服务器页面,它是一种运行于服务器端的脚本编写模 型,它使开发者可以使用几乎所有的脚本语言( v b s c r i p t 、j s c r i p t 或p e r l 等) 编写脚本,这些脚本可以执行应用程序逻辑,并能够调用a c t i v e x 组件执行特殊任务,如数据库查询、文件输入输出等【1 4 1 。利用a s p ,可 以很容易地把h t m l 标签和文本,脚本命令以及a c t i v e x 控件混合在一 起实现动态网页,创建交互式的w e b 站点,而不需要进行复杂的编程。 皇从m i c r o s o f ti i s3 0 出现以来,微软提出并一直致力于发展a s p 技术。 至今,a s p 技术得到了进一步的发展,在i i s4 0 中提供了a s p 脚本调 试工具、事务处理、新的a c t i v e x 组件、r d s 等新特性。 a s p 文件是以a s p 为扩展名的文本文件,这个文本文件可以是文 本、h t m l 标记和a s p 脚本命令的任意组合。当用户通过浏览器发出 一个对a s p 页的请求后,w e b 服务器接受这一请求,调用相应的a s p 页,由于a s p 仅是一种开发环境而非一种语言,因此a s p 页中能使用 任何一种脚本语言,只要w e b 服务器上安装了相应的解释程序就行了, 脚本语言被解释以后,就执行其中的脚本命令,然后生成一个由标准的 h t m l 组成的w e b 页发送给用户。 在这一过程中,由w e b 服务器完成所有的脚本处理工作,站点服 务器会自动将a c t i v es e r v e rp a g e 的程序码,解释为标准h t m l 格式的 第2 章分布式动态w e b 应爝系统 主页内容,再送到用户端的浏览器上显示出来。用户端只要使用常规可 执行h t m l 码的浏览器,即可浏览a s p 所设计的主页内容。a s p 具有 以下特点: 露向对象。 完全与h t m l 集成,易于生成,只需掌握一门脚本语言。 使用常规文本编辑器即可设计。 a s p 是在服务器端运行,开发者无需考虑浏览器兼容问题。 a s p 只把结果返回给浏览器,开发者不必担心a s p 源程痔代码 会被别人窃取。 a s p 可以通过使用a c t i v e xs e r v e rc o m p o n e n t s ( a c t i v e x 服务器 组件) 来扩充脚本语言的功能。 a s p 通常必须放在支持a s p 的w e b 服务器上的一个有可执行 权限的目录下,才能被正确运行。 a s p 访闻数据库的过程是:当用户使用浏览器请求a s p 主页时, w e b 服务器响应,调用a s p 引擎来执行a s p 文件,并解释其中的脚本 语言( j a v a s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中秋之夜作文(11篇)
- 1.2-认识数字孪生
- 公交公司庆八一活动方案
- 公交服务整治活动方案
- 《有机物的结构特性:高中生物有机化学教案》
- 倒霉的一天400字(14篇)
- 公司聘用在职员工证明书(8篇)
- 公共安全大讨论活动方案
- 公关公司策划方案
- 公务员遴选之活动方案
- 高效能人士的七个习惯(课件)
- 四年级英语下册 Recycle2-阶段测试卷(人教版)
- DB11T 893-2021 地质灾害危险性评估技术规范
- 呼吸系统测试题(含参考答案)
- 欧洲文明概论学习通超星期末考试答案章节答案2024年
- 民兵知识小常识
- 山西省大同市平城区2023-2024学年六年级下学期期末考试英语试卷
- 2023年高考真题-地理(河北卷) 含答案
- 大学本科教学指导委员会章程
- 养老机构消防安全管理规定知识培训
- 热力学全册配套完整课件3
评论
0/150
提交评论