(通信与信息系统专业论文)基于web的远程监测系统的研究和实现.pdf_第1页
(通信与信息系统专业论文)基于web的远程监测系统的研究和实现.pdf_第2页
(通信与信息系统专业论文)基于web的远程监测系统的研究和实现.pdf_第3页
(通信与信息系统专业论文)基于web的远程监测系统的研究和实现.pdf_第4页
(通信与信息系统专业论文)基于web的远程监测系统的研究和实现.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(通信与信息系统专业论文)基于web的远程监测系统的研究和实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华北电力大学硕士学位论文摘要 摘要 i n t e r n e t 的发展为远程监控技术的发展提供了新的环境,近年来,远程监控技 术成为国内外研究的前沿课题。j a v a 是当前比较流行的一种网络设计语言,它最大 的优点就是操作平台的无关性。本论文针对电力系统设备的远程监测的现实意义, 设计了基于w e b 的远程监测系统。在接个系统的整体设计上,采用b s 的网络体系 机构,使用j s p 网页设计语言和基于j a v a 的相关的技术,实现了w e b 服务器的设 计,使用s q ls e r v e r2 0 0 0 数据库系统完成数据库服务器的设计。同时本论文对系 统的关键性问题:无关性、实时性和安全性进行了分析和研究。 关键词:远程监测,b s j s p ,j f r e e c h a r t ,j a v a g e a n a b s t r a c t t h ed e v e l o p m e n to fi n t e r n e tp r o v i d e san e we n v i r o n m e n tf o rt h er e m o t em o n i t o r i n g s y s t e m i nr e c e n ty e a r ,r e m o t em o n i t o r i n gs y s t e mh a sb e c o m et h eo n e o fm o s ti m p o r t a n t a d v a n c e ds u b j e c t sa th o m ea n da b r o a d j a v ab e c o m e sap o p u l a rl a n g u a g ef o rd e s i g n i n g w e bb e c a u s eo fi t si n d e p e n d e n c et oo p e r a t ep l a t i nv i e wo ft h ee l e c t r i c a lp o w e rs y s t e m e q u i p m e n t ,t h i sp a p e rh a sd e s i g n e dt h er e m o t em o n i t o rs y s t e mb a s e do nt h ew e b i n o v e r a l lt h ed e s i g n ,t h i ss y s t e ma d o p t st h eb ss t r u c t u r a lm o d e l ,u s e sj s pl a n g u a g ea n d t e c h n o l o g i e sw h i c ha r er e l e v a n tt oj a v a ,a n dr e a l i z e st h ed e s i g no fw e bs e r v e r a n dt h e p a r to fd a t a b a s es e r v e ra d o p t st h es q ls e r v e r2 0 0 0 i nt h es a m et i m e ,t h i sp a p e ra n t y z e s a n ds t u d y st h ek e yi s s u e so ft h er e m o t em o n i t o r i n gs y s t e m l i uc h u n y u ( c o m m u n i c a t i o na n di n f o r m a t i o ns y s t e m ) d i r e c t e db ya s s o c i a t ep r o kb a oh u i k e yw o r d s :r e m o t e m o n i t o r i n g ,b s ,j s p ,j f r e e c h a r t ,j a v a b e a n 声明 本人郑重声明;此处所提交的硕士学位论文基于w e b 的远程监测系统的研究和 实现,是本人在华北电力大学攻读硕士学位期间,在导师指导下进行的研究工作和取 得的研究成果。据本人所知,除了文中特别加以标注和致谢之处外,论文中不包含其他 入已经发表或撰写过的研究成果,也不包含为获得华北电力大学或其他教育机构的学位 或证书丽使用过的材料。与我一同工作的同志对本研究所做豹任何贡献均已在论文中作 了明确的说明并表示了谢意。 学位论文作者签名:互肛日 期:2 型厶生卫 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文;学校可允许学位论文被查阅或借阅:学校可以学术交流为 目的,复制赠送和交换学位论文:同意学校可以用不同方式在不同媒体上发表、传播 学位论文的全部或部分内容。 涉密的学位论文在解密后遵守此规定) 作者签名: 华北电力大学硕士学位论文 1 1 选题的目的和意义 第一牵引言 近年来,i n t e r n e t 为远程脏控技术的发展提供了新的环境,远程监控技术正 伴随着网络技术的发展而不断提高。远程监控是指本地计算机通过网络系统 i n t e r n e t 对远端的工作系统进行监控,完成对分散控制网络的状态监控、远程软件 下载及设备的诊断维护等功能。而基于w e b 的远程监测系统是以w e b 作为通信平台 的一种监测系统。通过建立基于w e b 的远程监控系统,管理人员可以通过i n t e r n e t 访问信息库,在运离现场的地方比如在家或在外地就可以看到设备运行情况并发送 控制信息到控制系统,由系统自动或有关人员进行操作,以保证系统的顺利运行。 与传统监控系统相比,远程的监控系统可以大大简化操作,实现大范围内的数据信 息共享“。这样可以在降低生产成本,提高劳动生产率以及增强企业的综合竞争 实力等方面都具有十分重要的意义0 1 。 1 。2 选题的研究状况 远程监控技术是计算机技术、网络技术、控制技术以及图形技术的结合。监控 技术大致经过了三个发展阶段:第一阶段是单机监控系统,主要是针对单台或者单 一类型的设备进行监控,系统是封闭的,状态信息仅仅供内部使用;第二阶段是集 中式监控系统,由多台计算机组成,其中一台计算机控制其他多台计算机进行监控; 第三阶段是网络范围内的远程监控系统。i n t e r n e t 的发展为各行各业带来了全新的 理念,把生产企业、科研机构、设备提供商三者更加紧密的结合在一起。 远程监控与故障诊断技术是国内外研究的前沿课题,国内外都展开了积极的研 究。1 9 9 7 年1 月,首届基于i n t e r n e t 的远程监控诊断工作会议由斯蜒福大学和麻 省理工学院联合主办。由斯坦福大学和麻省理工学院合作开发基于i n t e r n e t 的下 一代远程诊断示范系统,这项工作同时也得到了制造业、计算机业和仪器表业的 s u n 、h p 、b o e i n g 、i n t e l 等1 2 家大公司的热情支持和通力配合。之后,由这些公 司协同共同推出了一个实验性的系统t e s t b e d ,t e s t b e d 用嵌入式w e b 组网、用实 时j a v a 和b a y e s a nn e t 初步形成在i n t e r n e t 范围内的信息监控和诊断推理。在国 外,著名的n a t i o n a li n s t r u m e n t 公司就在他的产品l a b v i e w 中加入了网络通讯处 理模块,因而可以通过w w w 、f t p 、e m a i l 方式在网络范围内进行监控数据的传送。 b e n t l y 、e n t e k 、s o l t r a n 等大公司也纷纷推出它们最新的网络化设备监测产品。法 国“a l a r m ”研究组对生产过程的智能报警和监控系统进行了长期研究,并在多个 华托电力大学硕士学位论文 项目中进行了应用。另外,还有许多著名的国际组织m i m o s a ( m a c h i n e r yi n f o r m a t i o n 撤a n a g e m e n to p e ns y s t e ma l l i a n c e ) 、s f p t s o c i e t yf o rf a i l u r ep r e v e n i o n t e c h n o l o g y ) 、c o m a d e m ( c o n d i t i o nm o n i t o r i n ga n de n g i n e e r i n gm a n a g e m e n t ) 等,也开展了对远程监控和故障诊断技术的研究。并提出了一定的信息交换和数据 处理的标准。 国内对于远程监控技术也开展了积极的研究。目前,西安交大、华中科技大学、 哈尔滨工业大学、南京理工大学等高校的研究成果较为先进,如谣安交通大学研制 的“大型旋转机械计算机状态监测系统及故障诊断系统r m m d ”、华中科技大学开发 出的“汽轮机工况监测和诊断系统k b t g m d ”、哈尔滨工业大学的“微计算机化机组 状态监视与故障诊断专家系统m m m d e s ”、南京理工大学c i m s 研究所承担了国防科工 委长春f m s 试验中心检测监控系统的研制任务,对柔性制造系统中各子系统的检测 监控技术进行了初步集成。这些大学也都建立了宣传远程监控技术的站点,例如由 西安交通大学联合其他几所高校共同创建的c e r n e t ( c h i n am o d e r nd e s i g n n e t w o r k s ) 、合肥工业大学的全球范围内的智能网络数控系统( i n e n t c n c ) 等。武 汉理工大学自动化学科的相关课题组也于1 9 9 7 年丌始相关技术的研究,并于1 9 9 9 年2 月起初步建立了一个远程诊断示范体系i r d sv 1 0 ,并承担了多个监控项目的 开发工作。 1 3 选题研究的内容 ( i ) 学习掌握各种与w w w 相关的技术,并对它进行了深入地分析比较。 ( 2 ) 对客户服务器和浏览器朋匣务器结构进行了分析比较。确定系统采用浏 览器服务器结构方案。 ( 3 ) 基于系统对实时性的要求,对i n t e r n e t 网络传输实时性进行了分析和 研究。 ( 4 ) 用j s p 网页设计语言实现对电力系统设备监测的页面设计,使用基于 j a v a 的图表引擎j f r e e c h a r t 和j a v a b e a n 组件实现监测数据的图表显示,采用j d b c 技术完成监测页面和数据库的连接。 ( 5 ) 采用s q ls e r v e r2 0 0 0 数据库管理系统完成设备监测的数据库服务器的 设计及在数据库中实现了访问控制,提高数据库的安全性。 2 华北电力大学硕士学位论文 第二章网络计算模型的发展 网络计算模型经历了七、八十年代的集中式和九十年代的分布式计算模型的演 变历程。分布式计算模型主要指客户机服务器结构和w e b 计算结构,其目的是将 计算工作分摊到多部计算机中,减轻集中在单部计算机上运算负载以降低可能的风 险。其中w e b 计算结构包括浏览器w e b 服务器结构和测览器应用服务器数据库服 务器三层结构”。 2 。1 客户机, i l l 务器结构 8 0 年代后期和9 0 年代初,随着通信技术、网络技术和数据库技术豹发展,客户 机服务器( c 1l e n t s e r v e r 简称c s ) 结构应运而生,并且成为计算机技术的发 展方向。浏览器i n 务器结构是一种典型的两层结构,其工作原理是:用户通过应 用程序向客户机提出数据要求,客户机通过网络将用户的数据要求提交给服务器, 服务器的数据库管理系统执行数据处理任务,然后把经过处理后的用户需要的那部 分数据,丽不是整个文件,传输到客户机上,最后由客户机完成对其所需数据的加 工。这种计算模型的结构图如图2 1 。 图2 1c s 两层结构 c s 这种应用架构的前台客户机具有图形用户界面及一定的交互处理能力,并 能完成一些业务处理和流程控制任务。客户机通过发出s q l 请求来得到服务器的数 据服务,也可以通过调用服务器数据库中的存储过程来要求数据库完成一些业务处 理。后台服务器大部分是关系型数据库管理系统,用以提供数据服务和一部分业务 处理( 存储过程) 功能。客户机和服务器通过局域网连接,通讯协议是局域网协议 ( 当然后来基本上都支持了t c p i i p ) 。这种方式带来了当时理念上的全新冲击,首 先中小企业不必购买价格高昂的大型主机,而是可以用一些性价比高的符合开放标 准的数据库服务器;其次是客户端( p c 机) 的图形用户界面输入方式和展现形式丰 3 华北电力大学硕士学位论文 富,大大简化了系统的操作难度和对输出结果的理解难度。降低了对使用者的要求。 这样也太大降低了企数构建业务系统的门槛,使得企业可以采用性价比更好的方式 构建自己的应用业务系统。这种开放式架构具有友好的用户界面、均衡的负载分配、 比“主机终端”架构更好的处理能力、伸缩性和性价比,因此当时众多企业都把 自己的部门级和企业级的应用部分构建在客户机服务器的架构上。由于这种架构 中的客户端具有强大的处理能力,应用软件的大部分程序是运行在客户端上的,所 以也称为胖客户端。 随着应用的深入和规模的不断扩大,应用程序日趋复杂,两层c s 结构暴露出 许多问题:由于显示逻辑和事务处理逻辑部分均被放在客户端。使得客户端承受着 双重任务,从而变“胖”了,而服务器端任务较轻,成为瘦服务器从而形成一种 “胖客户端瘦服务器”( f a tc 1 i e n t t h i ns e r v e r ) 结构。负荷不均匀使得客户端 的管理越来越困难,因为如果系统升级,必须为所有的客户端一一升级。这不仅给 应用软件的实现带来了不便,而且软件维护费用也越来越高。此外,c s 结构所采 用的软件产品大都缺乏开放的标准,一般不能跨平台运行。当把c s 结构的软件应 用于广域网时就暴露出更多的问题”:由于客户端和服务器端直接连接。服务器将 消耗部分系统资源用于处理与客户端的连接工作,每当同时存在大量客户端数据请 求时,服务器有限的系统资源将被用于频繁应付与客户端之间的连接,无法及时响 应数据请求从而产生数据堆积,进而导致系统整体运行效率的大幅降低甚至全面崩 溃。而w e b 计算结构可以比较圆满的解决以上问题。 2 2w e b 计算结构n 1 2 0 世纪9 0 年代中期随着i n t e r n e t 的广泛应用和普及人们从i n t e r n e t 上 得到了方便、快捷和更加多样化的信息,浏览器n 务器( b r 鲫s e r s e r v e r ,简称 b s ) 结构就在这种背景下产生了。在b s 结构中,把原来在客户机一侧的应用程 序模块与显示功能分开,将它放到w e b 服务器上单独组成一层,客户机上统一采用 易于操作的用户界面一浏览器。通过把负荷均衡地分配给了w e b 服务器,客户机变 “瘦”了,从而使系统更具有可控性,给系统维护带来了极大地方便。将系统地应 用程序集中到服务器端,而无需开发客户端程序,服务器上所有应用程序都可以通 过w e b 浏览器与数据库连接实现访问w e b 数据库的功能,不仅统一了用户界面,而 且实现了跨平台操作。 b s 结构地最大特色在于为用户提供良好地信息查询界面。w e b 服务器把各种 形式地信息,如文本、图像、声音和视频等紧密地集成在一起用户只需要提出自 己地查询要求,具体到哪个地方、如何取回信息都由w e b 服务器自动完成。实现w e b 服务地通信协议是h t t p ( 超文本传输协议) ,它定义了h t t p 地通信交换机制,h t & ( l 4 华北电力大学硕士学位论文 一 富,犬大简化了系统的操作难度和对输出结果的理解难度,降低了对使用者的要求。 这样也大大降低了企业构建业务系统的门槛,使得企业可以采用性价比更好的方式 构建自己的应用业务系统。这种开放式架构具有友好的用户界面、均衡的负载分配、 比“主机终端”架构更好的处理能力、伸缩性和性价比,因此当时众多企业都把 自己的部门级和企业级的应用部分构建在客户机服务器的架构上。由于这种架构 中的客户端具有强大的处理能力,应用软件的大部分程序是运行在客户端上的,所 以也称为胖客户端。 随着应用的深入和规模的不断扩大,应用程序日趋复杂,两层c i s 结构暴露出 许多问题;由于显示逻辑和事务处理逻辑部分均被放在客户端,使得客户端承受着 双重任务,从而变“胖”了,而服务器端任务较轻,成为瘦服务器,趴而形成一种 “胖客户端瘦服务器”( f a tc i i e n t t h i ns e r v e r ) 结构。负荷不均匀使得客户端 的管理越来越困难,因为如果系统升级必须为所有的客户端一一升级。这不仅给 应用软件的实现带来了不便,而且软件维护费用也越来越高。此外,c s 结构所采 用的软件产品大都缺乏开放的标准,一般不能跨平台运行。当把c s 结构的软件应 用于广域网时就暴露出更多的问题”。;由于客户端和服务器端直接连接,服务器将 消耗部分系统资源用于处理与客户端的连接工作,每当同时存在大量客户端数据请 求时,服务器有限的系统资源将被用于频繁应付与客户端之间的连接无法及时响 应数据请求从而产生数据堆积,进而导致系统整体运行效率的大幅降低甚至全面崩 溃。而w e b 计算结构可以比较圆满的解决以上问题。 2 ,2w e b 计算结构”1 2 0 世纪9 0 年代中期,随着i n t e r n e t 的广泛应用和普及,人们从i n t e r n e t 上 得到了方便、快捷和更加多样化的信息浏览器朋务器( b r o w s e r s e r v o r ,简称 b s ) 结构就在这种背景下产生了。在b s 结构中,把原来在客户机一侧的应用程 序模块与显示功能分开。将它放到w e b 服务器上单独组成一层,客户机上统一采用 易于操作的用户界面一浏览器。透过把负荷均衡地分配给了w e b 服务器,客户机变 “瘦”7 ,从而使系统更具有可控性,给系统维护带来了极大地方便。将系统地应 用程序集中到服务器端,而无需开发客户端程序,服务器上所有应用程序都可以通 过w e b 浏览器与数据库连接实现访问w e b 数据库的功能,不仅统一了用户界面,而 且实现了跨平台操作。 b s 结构地最大特色在于为用户提供良好地信息查询界面。w e b 服务器把备种 形式地信息,如文本、图像、声音和视频等紧密地集成在一起,用户只需要提出自 己地查询要求,具体到哪个地方、如何取回信息都由w e b 服务器自动完成。实现w 曲 服务地通信协议是h t t p ( 超文本传输协议) ,它定义了h t t p 地通信交换机制,h t m l 服务地通信协议是h t t p ( 超文本传输协议) 它定义了h t t p 地通信交换机制,h t m l 4 - f - j l :电力人学颂十学1 1 :7 = 论文 ( 超文本标记语亩) 用来描述w e b 上发靠地信息,浏览器通过解释执行h t m l 文件 显示黼文并茂地信息,向用户提供良好地信息奄询界面。确切地说,b s 结构是在 传统c s 结构地基础上发展起来的适用十分布环境的新型网络计算模式,人们常常 称之为三| f 孟 c s 结构模型。b s 结构把c s 结构的服务器端进行细化,分解为一个 w e b 服务器和一个或多个数据库服务器。三层的b s 模型如蚓2 2 所示。 图2 2b s 三层结构 第一层是表示层,即w e b 浏览器层,是用,。与系统之间交互信息的抖i f :f i 。它的 :仨罂功能是提供n f 视界嘶。检查用户输入的数榭,垃示系统输出的数孰:。什j 户柏:客 ,、端使用浏览器出统资源定位器( u i i ,) 指定w e b 服务器地址,井提出服务i p 诸, w e bj j 技务器对用j i 身份进行验证后根据抖】p 的巾消刚 t r f p 卧议把所需的文件资 i : 传 送给 j 户,客户端接收文件资料,并显示往浏览器上。 第一:从是功能从,即w e b 服务器层。w e b 服务器完成客户的应刖功能。功能k ; 煌应月j 的:卜体,是瀣示层与数掘层的逻辑桥梁。它包括了应刚中个部的业务处理私! 序。它的 工务是接受用j l 的请求,如果靖求的是一般的静念页两,则在服务器义件 系统找到所需的负面作为墩终结果返网给用户。如果用户请求是内嵌柱服务器端执 行的脚本语苦的税序调用。则启动相也的服务税序动态牛成页面返砸i 给埔户。当 w e b 服务器得到的请求是龠s q i 语句的程序时,i i i 该对象组件负责处理页面- i - 内嵌 的s o l 语句,访问数据库并返回处理信息,将结果处理成标准的h r m i 文奉。返| u i 给浏览器用户。在后两种请求中,w e b 服务器首先需要执行相应的扩展位用狂序或 其它相关程序,建立与数据库系统的连接,向数据库服务器提j j ;数据处理巾请,i i j 后等数搬库服务器将数据处理的结果提交给w e b 服务器,再由w e b 服务器传送同客 户端。 笫三层是数据层。即数据痒服务器层。主要利用数据库服务器完成数据的存储 和管理功能。它的任务是接受w e b 服务器对数据库操纵的请求,实现对数掘瘁套询、 修改、更新等功能,把运行结构提交给w e b 服务器。 5 华北电力大学硕士学位论文 c l s 和8 s 是当今世界开发模式技术架构的两大主流技术。c l s 是美国b o r l a n d 公司最早研发。b i s 是美鼠微软公司研发。但是b i s 计算模式与c s 计算模式相比, 具有以下特点阳h ”1 : ( 1 ) 硬件环境不同 c s 一般建立在专用的网络上,小范蜀里的两络环境,局域两之间再通过专门 服务器提供连接和数据交换服务。b i s 建立在广域网之上的,不必是专门的网络硬 件环境,例如电话上网,租用设备,信息自己管理,有比c s 更强的适应范围,一 般只要有操作系统和浏览器就行。 ( 2 ) 对安全要求不同 c l s 一般面向相对固定的用户群,对信息安全的控制能力很强。一般高度机密 的信息系统采用c s 结构适宜,可以通过b i s 发布部分可公开信息。b s 建立在广 域网之上,对安全的控制能力相对弱,面向是不可知的用户群。 ( 3 ) 对程序架构不同 c s 程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较 少考虑。b s 对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。 比c s 有更高的要求,b s 结构的程序架构是发展的趋势,从m s 的n e t 系列的 b iz t a l k 2 0 0 0 、e x c h a n g e 2 0 0 0 等,全面支持网络的构件搭建的系统。s u n 和i b m 推 的j a v a b e a n 组件技术等,使b t s 更加成熟。 ( 4 ) 软件重用不同 c s 程序不可避免的耍做整体性考虑,构件的重用性不如在b i s 要求下的构件 的重用性好。b i s 对应的多重结构,要求构件具有相对独立的功能。能够相对较好 的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。 ( 5 ) 系统维护不同 系统维护在软件生存周期中,开销大,相当重要。c s 程序由于其整体性,必 须整体的考察,处理出现的问题以及系统升级难,如果出现问题可能是再做一个全 新的系统。b s 构件组成方面构件个别的更换,实现系统的无缝升级。系统维护开 销减到最小,用户从弼上自己下载安装就可以实现升级。 ( 6 ) 处理问题不同 c s 程序可以处理用户面固定,并且在相同区域,安全要求高的需求,与操作 系统相关,应该都是相同的系统。b s 建立在广域网上,面向不同的用户群。分散 地域,这是c s 无法作到的,与操作系统平台关系最小。 6 华北电力大学硕士学位论文 ( 7 ) 用户接口不同 c s 多是建立在w i n d o w 平台上,表现方法有限,对程序员普遍要求较高。b s 建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低, 降低了开发成本。 7 华北电力大学硕士学位论文 3 1 j s p 技术 第三章课题实现关键技术的研究和分析 j s p ( j a v as e r v e rp a g e s ) 是s u n 公司在1 9 9 6 年6 局推出的新技术,是基于 j a v as e r v l e t 以及整个j a v a 体系的w e b 开发技术,是s e r v l e t 2 i a p i 的扩展。在 传统的网页h t m l 文件中加入j a v a 程序片段和j s p 标记,就构成了j s p 网页( 女j s p ) 。 j s p 文件不能由浏览器直接运行而需由w e b 服务器解析执行,首先执行其中的程 序片段,然后将执行结果以h t m l 格式返回给客户。程序片段可以操作数据库、重 新定向网页等等,这就是建立动态网站所需要的功能。所有程序操作都是在服务器 端执行,嘲络上传送给客户端的仅是得到的结果,既h t m l 文件。如果服务器在接 收戮用户对j s p 页面的请求后,发现该页面是第一次被请求,j s p 引擎就把该j s p 页面转化成为一个s e r v l e t ,然后将该s e r v l e t 编译成c l a s s 在服务器执行,将执 行结果输出到浏览器。由于s e r v l e t 是以独立线程的方式一直存在于服务器内存中 的。所以执行效率相当高1 。 3 1 1j s p 技术的特点 在早期,开发网络数据库应用程序主要采用c g i ( c o m m o ng a t e w a yi n t e r f a c e 公用网关接口) 技术。编写c g i 程序可以使用不同的程序语言,如v i s u a lb a s i c 、 d e l p h i 或c c + + 等。虽然c g i 技术已经发展成熟而且功能强大,但存在编程困难、 效率低下、修改复杂等缺陷。由于这些缺陷的存在,新的技术纷纷面世,如m i c r o s o f t 的a s p ( a c t i v es e r v e rp a g e ) ,t c x 的p h p ( h y p e r t e x tp r e p r o c e s s o r ) s u n 的 j a v 8 j s p s e r v l e t 等。其中,j s p 基于强大的j a v a 语言,具有良好的伸缩性,与 j a v ae n t e r p r i s ea p i 紧密地集成在一起,在网络数据库应用歼发领域具有得天独 厚的优势”,其主要特点如下: ( 1 ) 内容的生成和显示进行分离 利用j s p 技术。w e b 页面开发人员可以使用h t m l 或者x m l 来设计和格式化最终 页面。使用j a v a 或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在 标识和j a v a b e a n 组件中。其他人能够编辑和使用j s p 页面,而不影响内容的生成。 在服务器端,j s p 引擎解析j s p 标识和小脚本,生成所请求的内容( 例如,通过访 问j a v a b e a n 组件,使用j d b c 技术访问数据库) ,并且将结果以h t m l ( 或者x m l ) 页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证了任何基于 b t m l 的w e b 浏览器的完全可用性。 ( 2 ) 生成可重用的组件 8 华北电力大学硕士学位论文 绝大多数j s p 页面依赖于可重用的、跨平台的组件( j a v a b e a n s 或者e n t e r p r i s e j a v a b e a n st m 组件) 来执行应用程滓所要求的变为复杂的处理。开发人员能够共享 和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使 用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和 优化结果的开发努力中得到平衡。 ( 3 ) 采用标识简化页面开发 标准的j s p 标识能够访问和实例化j a v a b e a n s 组件、设置或者检索组件属性、 下载a p p l e t 、以及执行用其他方法更难于编码的功能。通过开发定制标识库,j s p 技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的 标识库。这使得w e b 开发人员能够使用熟悉的工具和如同标识一样地执行特定功能 的构件来工作。 ( 4 ) j s p 能提供所有s e r v l e t 功能 j s p 能提供所有的s e r v l e t 功能,它比用p r i n t l n 书写和修改h t m l 更方便。此 外,您可以更明确地进行分工。例如,让w e b 页面设计人员编写h t m l ,然后留出空 间让s e r v l e t 程序员插入动态部分。 ( 5 ) 健壮的存储管理和安全性 由于j s p 页面的内簧脚本语言是基于j a v a 编程语壶的,而且所有的j s p 页面 都被编译成为j a v ac l a s s ,所以j s p 页面就具有了j a v a 技术的所有优点,包括健 壮的存储管理和安全性。 ( 6 ) 一次编写,随处运行 作为j a v a 平台的一部分,j s p 拥有j a v a 编程语言“一次编写,随处运行”的 特点。随着越来越多的供应商将j s p 支持添加到他们的产品中,您可以使用自己所 选择的服务器和工具,但并不影响当前的应用。 ( 7 ) j s p 的平台无关性 这是j s p 比a s p 的优越之处。几乎所有平台都支持j a v a 、j s p + j a v a b e a n s ,它 们可以在任何平台下通行无阻。从一个平台移植到另一个平台,j s p 和j a v a b e a n s 甚至不用重新编译。 3 1 2j s p 技术与其它动态网页技术的比较 除了j s p 动态网页技术,目前实现动态网页的还有其他三种主要技术:c g i 技 术、a s p 技术和p h p 技术。现分别介绍如下: c g i ( c o m m o ng a t e w a yi n t e r f a c e 公共网关接口) 技术。c g i 是w e b 上数据库 9 华北电力大学硕士学位论文 应用的传统解决方案,它通过数据库接口技术与数据库进行连接。c g i 程序可以使 用p e r l 、c 、c + + 等语言编写,跨平台性能好,但c g i 程序是服务器端的可执行程序 与w e b 服务器占据不同的进程,尤其是多用户访问时,会挤占服务器的系统资源, 导致c g i 程序和w e b 服务器运行效率很低,开发数据库也没有统一标准。 a s p ( a c t i v es e r v e rp a g e s ) 技术。a s p 拨本是微软公司开发妁一种类似h t m l 、 s c r i p t 脚本与c g i 的结合体。a s p 的核心技术是对组件和对象技术的充分支持。但 a s p 技术有很明显的缺陷。它的安全性与稳定性不好,跨平台性较差,很难提高程 序效率。 p h p ( p e r s o n a lh o m e p a g e ) 技术。p h p 是一种易于学习和使用的服务器端脚本 语言,它是嵌入h t m l 文件的一种脚本语言,它的语法大部分是从c 、j a v a 、p e r l 语言中借来的,并形成了自己的独有风格。但由于p h p 是世界各地的志愿者开发出 来的,缺乏统一的接口,从而造成对不同数据库的连接变化很大,使得数据库的开 发工作很复杂,开发难度大。 j s p ( j a v as e r v e rp a g e s ) 技术。j s p 是基于j a v as e r v l e t 以及整个j a v a 体 系的w e b 开发技术,它利用j d b ca p t 实现对后台服务器的访阀,随着j a v a 和j d b c 的同益成熟,j s p 技术由于它极佳的跨平台性能很高的运行效率以及越来越多的 企业支持。使得它的应用范围及其广泛。 通过以上比较,可以发现j s p 技术无论是在跨平台特性、运行效率还是商业支 持方面都具有优势,从而使它成为目前和将来进行动态网站架设和开发的极佳工 具所以在本监测系统的w e b 服务器网页设计部分采用j s p 技术来实现。 3 2j d b o 技术 j d b c ( j a v ad a t ab a s ec o n n e c t iv i t y ) 是一种可以为各种常用数据库提供无 缝连接的技术。它作为j a v a 平台的一个标准组成部分,是根据“与平台无关”的 基本原则雨设计的,对独立于数据库的跨平台的数据库访问提供有力的技术支持, j d b c 定义了j a v a 语言网s q l 数据之间的程序设计接口j a v aa p i ( a p p l i c a t i o n p r o g r a m m i n gi n t e r f a c e ) ,它由一组类和接口构成,通过调用这些类和接口所提供 的方法,提供了j a v a 程序与各种数据库服务器之间的连接服务,它支持a n s is o l 一9 2 标准,实现了从j a v a 程序内调用标准的s q l 命令对数据库进行奋询、插入、删除 和更新等操作,并确保数据事务的正常进行。j d b c 为数据库应用开发人员、数据库 前台工具开发人员提供了一种标准的应用程序设计接口。使开发人员可以用纯j a v a 语言编写完整的数据库应用程序。 3 2 1j d b o 的组成和工作机制 1 0 华北电力大学硕士学位论文 j d b c 是实现j a v a 应用程序与各种不同数据库对话的一种机制。j d b c 由两部分 与数据库独立的a p t 组成,一部分是面向程痔并发入员的j d b ca p i ,另一部分是面 向底层的j d b co r i v e ra p i 。j d b c 提供了一个通用的j d b cd r i v e tm a n a g e r ,用来 管理各种数据库软件商提供的j d b c 驱动程序从而访问其数据库。此外,对没有 提供相应j d b c 驱动程序的数据库系统,开发了特殊的驱动程序:j d b c o d b c 桥- 该 驱动程序支持j d b c 通过现有的o d b c 驱动程序访问其数据库系统。j d b c 的基本层次 结构由j a v a 程序、j d b c 驱动程序管理器、驱动程序和数据库四部分组成“。如图 3 1 所示。 图3 一ij d b c 体系结构 ( i ) j a v a 程序包括j a v a 应用程序和j a v a 小应用程序,主要是根据j d b c 方 法实现对数据库的访问和操作。其主要任务有:请求与数据库建立连接;向数据库 发送s q l 请求;为结果集定义存储应用和数据类型:查询结果:处理错误;控制传 输、提交及关闭连接等操作。 ( 2 ) j d b c 驱动程序管理器能够动态地管理和维护数据库查询所需要的所有驱 动程序对象,实现j a v a 程序与特定驱动程序的连接。从而体现j d b c 的“与平台无 关性”这一特点。其主要任务有:为特定数据库选择驱动程序:处理j d b c 初始化 华北电力大学硕士学位论文 调用;为每个驱动程序提供j d b c 功能的入口;为j o b c 调用执行参数等。 ( 3 ) 驱动程序处理j d b c 方法,向特定数据库发送s q l 请求,并为j a v a 程序 获取结果。在必要的时候,驱动程序可以翻译或优化请求,使s q l 请求符合d b m s 支持的语言。其主要任务有:建立与数据库的连接;向数据库发送请求;用户程序 谚求时执行魏译;将错误代码格式化成标准的j d b c 错误代码等。j n b c 是独立于数 据库管理系统的,而每个数据库系统均有自己的协议与客户机通信,因此,j d b c 利 用数据库驱动程序来使用这些数据库引擎。j d b c 驱动程序由数据库软件商和第三方 软件商提供,因此,根据编程所使用的数据库系统不同,所籍要的驱动程序也有所 不同。 ( 4 ) 数据库指j a v a 程序需要访问的数据库及其数据库管理系统。 3 2 2j d b c 驱动器分类 j d b c 驱动程序实现在j d b ca p i 中定义的所有抽象类和接口,为通用的d r i v e r m a n a g e r 提供j d b ca p i 。根据访问数据库的技术不同,j d b c 驱动程序相应地分为四 种类型,分别是j d b c o d b cb r i d g e 、j d b c n a t i v ea p ib r i d g e 、j d b c m i d d e w a r e 及p u r ej d b cd r i v e r 。不同类型的j d b c 驱动程序有着不一样的特性和使用方法 程序开发人员根据自己研究系统的需要来选择进行选择”“。 ( 1 ) j d b c o d b cb r i d g e ( j d b c - o d b c 桥驱动程序) 。此类驱动程序提供了通过 o d b c 驱动程序的j d b c 访问。其特点是必须在本地计算机上先安装好o d b c 驱动程序, 然后通过j d b c o d b cb r i d g e 的转换,将j a v a 程序中使用的j d b ca p i 访问指令转 换成o d b ca p i 指令,进而通过o d b c 驱动程序调用本地数据库驱动代码完成对数据 库的访问。这种方法的不足是:执行效率低,不适合对大量数据存取的应用:要求 客户端必须安装o d b c 驱动,不适合基于i n t e r n e t i n t r a n e t 的应用。 ( 2 ) j d b c - n a t i v ea p ib r i d g e ( 部分j a v a 的本地j d b ca p i 桥驱动程序) 。同 第一类一样,此类驱动程序也必须在本地计算机上先安装好特定的驱动程序( 类似 o d b c ) ,然后通过j d b c - n a t i r ea p ib r i d g e 的转换,把j a v a 程序中使用的j d b ca p i 转换成n a t i v ea p i ,进而存取数据库。这种方法效率比第一类驱动程序效率虽然高 一些,但仍然需要在每台客户机上预先安装本地a p i 库,因此不利于维护和使用。 ( 3 ) j d b c m i d d l e w a r e ( 纯j a v a 的j d b c 中间件驱动程序) 。使用这类驱动程 序时不需要在本地计算机上安装任何附加软件,但是必须在安装数据库管理系统的 服务器端加装中间件( m i d d l e w a r e ) ,这个中间件负责所有存取数据库时必要的转 换。此类驱动程序能将j d b c 访问转换成与数据库无关的标准网络协议送出,然后 由一个中间件服务器再将其转换成数据专用的访问指令,完成对数据库的操作。中 华北电力大学硕士学位论文 间件服务器能支持对多种数据库的访问。由于是基于中间件服务器的,这类驱动程 序的体积最小,效率较高。具有最大的灵活性,缺点是需要一个中间服务器的支持。 此类驱动采用标准的网络协议,可以被防火墙支持,是i n t e r n e t 应用理想的解决 方案。 ( 4 ) p u r ej d b cd r i v e r ( 纯j a v a 的j d b c 驱动程序) 。使用这类驱动程序时无 需安装任何附加的软件( 无论是本地计算机或是数据库服务器端) ,所有存取数据 库的操作都童接由j d b c 驱动程序来完成。此类驱动程序能将j d b c 调用转换成d b m s 专用的网络协议。数据库厂商是这一类驱动程序的主要提供者。它允许从客户机到 数据库服务器的直接调用。这种驱动程序的效率最高,但由于采用d b m s 专用的网 络协议,可能不被防火墙支持。在i n t e r n e t 应用中会存在潜在的安全隐患。 综上所述,四类驱动程序的分析可以看出最佳的j d b c 驱动程序类型是第四类, 它不会增加任何额外开销,并且由纯j a v a 语言开发而成,拥有最佳的兼容性。由 于第一类和第二类的j d b c 驱动程序都必须事先安装其他附加的软件,有损j a v a 数 据库程序的兼容性。第三类3 d b c 驱动程序也是不错的选择。它也是由纯j a v a 语言 开发而成的。并且中间件也仅需要在服务器上安装。因此在选择驱动程序时,最好 的选择就是第兰类和第四类j d b c 驱动程序。 3 2 3j d b o 的关键接口和数据库访问的一般算法 j d b c 主要有两种接口。分剐是面向程序开发人员的j d b ca p i 和面向底层的j d b c d r i v ea p i 。在j o b ca p i 定义了一些数据库操作的类和接口,通过这些接口实现与 数据库连接,执行s q l 语句并得到返回结果等功能。下面是其中关键的类和接口: ( 1 ) j a v a s q l d r i v e r 和j a v a s q l d r i v e r m a n a g e r :管理驱动程序,为驱动 程序的调入和訇建新的数据库连接提供支持。 ( 2 ) j a v a s q l c o n n e c t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论