(计算机系统结构专业论文)基于web的数据服务系统在冶金企业中的应用.pdf_第1页
(计算机系统结构专业论文)基于web的数据服务系统在冶金企业中的应用.pdf_第2页
(计算机系统结构专业论文)基于web的数据服务系统在冶金企业中的应用.pdf_第3页
(计算机系统结构专业论文)基于web的数据服务系统在冶金企业中的应用.pdf_第4页
(计算机系统结构专业论文)基于web的数据服务系统在冶金企业中的应用.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(计算机系统结构专业论文)基于web的数据服务系统在冶金企业中的应用.pdf.pdf 免费下载

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

文档简介

东北大学硕士学位论文摘要 基于w e b 的数据服务系统在冶金企业中的应用 摘要 由于互联网技术的飞速发展以及经济全球化程度的不断提高,企业对信息进行网络 化管理的需求日益强烈,大部分企业管理软件已经开始全面从桌面应用走向网络应用, 系统构架从c s 结构升级到b s 结构。基于w e b 的平台设计已成为企业管理软件的默 认标准。运用更科学、更先进的技术和方法开发出符合企业要求的新一代管理信息系统 成为当前迫切需要解决的问题。 本文结合某钢铁企业数据服务系统的开发实例,对基于w e b 的企业信息系统研究方 法和开发技术进行了探讨。文中论述和分析了w e b 应用系统的基本特征,系统结构, 开发方法及技术;研究了在n e t 平台上采用甜n e t 开发基于w e b 的a s e n e t 应用系 统的方法和途径和基于a d o n e t 的w e b 应用技术。 论文首先分析了传统信息系统存在的问题和基于w e b 的企业数据服务系统的优势。 然后分析了w e b 的体系结构、w e b 应用系统的开发方法及技术。重点论述了在n e t 平 台上采用甜n e t 开发基于w e b 的a s p n e t 应用系统特征和优势。接着以某钢铁企业 数据服务系统的开发为例,具体介绍了在n e t 下开发基于w e b 的企业数据服务系统的 方法。最后分析试验数据,并提出针对企业的数据服务系统的设计思路。 关键词:数据服务系统;w e b 体系结构;数据库;a s e n e t :a d o n e t 东北大学硕士学位论文 a b s t r a c t a p p l i c a t i o no f d a t as e r v i c es y s t e m i ns t e e le n t e r p r i s eb a s e do nw e b a b s t r a c t s i n c et h er a p i dd e v e l o p m e n to fi n t e m e t i n t r a n e ta n dt h ei m p r o v e m e n to f e c o n o m y g l o b a l i z a t i o n ,e n t e r p r i s e s a r ei nm o r ed e m a n df o rt h e m a n a g i n g i n f o r m a t i o n b y i n t e m e t i n t r a n e t m o s to fm a n a g e m e n ti n f o r m a t i o ns y s t e m sa r eu p g r a d i n gf r o md e s k t o p a p p l i c a t i o nt on e ta p p l i c a t i o n t h es t r u c t u r eo fs y s t e mi su p g r a d i n gf r o mc st ob s 1 1 l e d e s i g nb a s e do nw e b i sb e c o m i n gt h ec o m m o ns t a n d a r do fm a n a g e m e n ti n f o r m a t i o ns y s t e m u t i l i z i n gm o r es c i e n t i f i ea n da d v a n c e dt e c h n o l o g yt od e v e l o pt h en e wg e n e r m i o no 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 mt h a ts a t i s f i e st h ed e m a n do fe n t e r p r i s e sn o wh a sb e e na n e m e r g e n tq u e s t i o n t a k i n gt h ed e v e l o p m e n to fs o m es t e e le n t e r p r i s ea sa ne x a m p l e ,t h i st h e s i sd i s c u s s e st h e s y s t e ma r c h i t e c t u r e ,d e v e l o p i n gm e t h o d sa n dt e c h n i q u e sf o rt h ed a t as e r v i c es y s t e mb a s e d o nw e b i ti n t r o d u c e st h ed e v e l o p i n ga n dp r o c e s sf o rw e b - b a s e da sp n e ta p p l i c a t i o ns y s t e m u t i l i z i n gc 舻n e ti nv s n e ta n dd a t a b a s et e c h n o l o g yb a s e do na d o n et f i r s tt h ed e v e l o p m e n tc o u r s eo fe n t e r p r i s ei ne n t e r p r i s ei n f o r m a f i o ns y s t e ma n dt h e p r o b l e m se x i s t e di nt r a d i t i o n a lm i sa n dt h ea d v a n t a g eo fw b b b a s e dd a t as e r v i c es y s t e mi s i n t r o d u c e di nt h i st h e s i s n c at h es y s t e ma r c h i t e c t u r e k e yt e c h n i q u e sa n da p p l i c a t i o no fw e b d a t as e r v i c es y s t e ma r ei n t r o d u c e d a n df e a t u r e sa n da d v a n t a g e so fd e v e l o p i n ga sp n e t a p p l i c a t i o nb a s e d o nw e b a p p i i c a ! t i o nw i t h 黜n e ti n ,n e ta r em a i n l yd i s c u s s e d t a k i n gt h e d e v e l o p m e n to ft h ed a t as e r v i c es y s t e mo fs o m es t e e le n t e r p r i s ea s a ne x a m p l e t h e d e v e l o p i n gm e t h o d sa n dp r o c e s s e sf o rw 曲一b a s e da p p f i c a f i o nw i t h n e ta r ei l l u s t r a t e di n d e t a i l a tl a s tt h ee x p e r i m e n t sd a t aa n dp r o v i d e st h ew a yh o wt od e s i g nd a t as e r v i c es y s t e m f o rs t e e le n t e r p r i s ea r ea n a l y z e d k e yw o r d s :d a t as e r v i c es y s t e m ;w e bs y s t e ma r c h i t e c t u r e ;d a t a b a s e ;a s e n e t ;a d o n e t h 独创性声明 本人声明,所呈交的学位论文是在导师的指导下完成的。论文中取得 的研究成果除加以标注和致谢的地方外,不包含其他人己经发表或撰写过 的研究成果,也不包括本人为获得其他学位而使用过的材料。与我一同工 作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示谢 意。 学位论文作者签名:皤、行晨 日期:1 矾驴,驴 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东北大学有关保留、使用学位论 文的规定:即学校有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人同意东北大学可以将学位论文的全部 或部分内容编入有关数据库进行检索、交流。 ( 如作者和导师不同意网上交流,请在下方签名;否则视为同意。) 学位论文作者签名: 签字日期: 导师签名: 签字日期: 东北大学硕士学位论文 第一章引言 第一章引言 1 1 本课题的研究背景、意义 目前,以计算机为核心的信息技术在企业管理层面上发挥了重要的作用,并从根本 上改变了企业的管理模式及工作方式。如何利用信息技术获得准确的、快速的信息是很 多企业所关心的。随着i n t e m e t i n t r a n e t 技术的广泛应用,信息管理系统的体系结构也发 生很大的变化,从以往基于c 偈结构的数据访问及安全体系发展到当前的基于b s 结构体 系。 基于w e b 的数据服务是国内、外学者和实践工作者研究的热点之一,基于各行各 业的数据服务也正在兴起。 随着冶金行业的发展,企业的信息化建设已经迈上了一个新台阶,由过去的面向企 业的一个具体应用已经逐渐过度到企业的所有应用上来。企业的管理也逐渐抛弃过去的 粗放型管理。企业法入的每一个决策都要有一定的数据作为决策的依据。 我国现有大型冶金企业有数十家之多,这些企业逐渐认识到企业竞争的根本是什 么? 大多相继推出e r p 。这些系统的根本都是围绕怎样挖掘企业的潜力,提高企业的竞 争力而提供服务的。本课题的开展就是看到这些应用的潜力而进行的。 论文的实践工作是建立一个基于w e b 的数据服务系统为国内某钢铁集团公司提供 生产数据及技术经济指标数据,同时为其领导层决策提供数据基础。 这种基于w e b 的数据服务系统,与普通的o a 相比,更加注重于数据管理的部分, 既可以看作是o a 的一个子系统,但是在数据处理和数据挖掘方面又远远强于o a 系统, 可以是o a 的强大补充。 与传统的e r p 系统相比,这种系统具有易维护,开发周期短,消耗费用小的先天优 势,同时在设计方面预留接口,可以和e r p 系统进行良好的整合。 这个课题的一个实例是建立一个基于w e b 的数据服务模型,对此系统在结构上最 大程度的做到能适应不同规模企业或者不同业务类型的冶金企业。 国内很基于w e b 的数据服务技术仅限运用于某个企业或企业的某个部门,对于这 一技术的运用仍然停留在手工作坊阶段。国内企业基于w e b 的数据服务作为信息管理 的工具,尚未出现一个良好的模型,使用户可以进行标准化的开发此类系统,或者形成 一个基于面向对象的开发平台供用户可以在此平台上开发适合自身的工业管理环境。 由于没有一个通用的开发标准,对已经具有的基于w e b 的数据服务企业来说,也 很少有系统可以进行灵活的扩展,在已有的系统上进行二次开发,来满足企业自身的需 求,经常会出现重复开发的现象,导致人、财、力的浪费。 东北大学项士学位论文 第一章引言 对于冶金行业基于w e b 的数据服务系统的研究与应用的前景表现在三个方面:第 一,关于数据处理功能、工具、方法( 算法) 的拓展与理论创新的研究。对数据处理功 能研究是工具、方法( 算法) 研究的前提,如果数据处理技术有所创新,那么,新的功能必 然会带动新工具、方法( 算法) 的研究。第二, 用,同时海量数据的产生已成为必然现象, 究也必然成为一个亟待解决的问题。第三, 随着w e b 技术在社会经济生活中的广泛应 基于w e b 的数据处理在各个行业的应用研 需要基于w e b 的数据管理系统的开发应该 形成一种规范,甚至是一种标准,在面向对象的基础上可以开发出适合多个企业、不同 需求的系统,而且具有良好的安全性、健壮性和可扩展性。因此,未来基于w e b 的数 据服务应用领域的研究将更加广泛。 某钢铁集团的数据统计科负责整个集团的业务数据,包括产品数据、技术指标数据、 收拨存数据以及其他相关数据。为了提高工作效率、便于管理,提出了开发一个基于 w e b 的数据管理系统的课题,从而为企业加快数据的交换和利用速度提供方便的信息 处理手段。 本文以该项目为背景,对基于w e b 的企业数据服务系统的应用进行了比较细致深 入的研究,在新一代n e t - i z 台上,采用a s p n 】奠技术开发w e b 数据服务系统,实现企 业信息的网络化管理。 1 2 本课题的研究内容 本论文主要论述了基于w e b 的数据服务系统在冶金行业中的应用。在本论文中重 点研究了以下几个问题; ( 1 ) 基t b s 结构的数据服务系统架构的研究以及改进这种传统的b s 结构,使之能 更适用于企业内部业务需求。 ( 2 ) 使用a s p n e t 技术下进行数据服务系统设计的方法。 ( 3 ) 系统性能的分析和测试。 ( 4 ) 总结企业级软件设计开发的特点。 1 3 论文的组织结构 论文的第一章简述了本课题的研究背景目前面向企业的数据服务系统的现状 和论文的研究内容。 论文的主体部分是第二章到第六章,论文的第二章重点介绍了w e b 技术的原理, 分析比较了几种w e b 应用技术,从而解决了课题的解决方案所需开发环境的选择。这 章也是整个课题的理论基础部分。 论文的第三章和第四章是某企业的数据服务系统解决方案的设计和实现。 东北大学硕士学位论文第一章引言 论文的第五章是对影响系统的主要性能方面进行测试。由于是面向企业的数据系 统,因此数据庞大、逻辑关系复杂是该系统的一个特点,从而测试担负系统的复杂数据 处理的功能是系统顺畅运行的重要实践基础。 论文的第六章结论部分。通过上面的理论基础和实际工作,从而提出了面向冶金系 统开发企业级软件的方法和不同于个人软件开发的企业级软件所特有的特性。 最后章为全文的结束语。 论文的组织形式如图1 1 所示。 第一章引言 第二章系统的理论基础 第三章系统的设计 第四章系统的实现 第五章系统测试以及实 验数据分析 第六章结论 第七章结束语 课题的背景以及主要研究内容 w e b 技术 系统的功能模块划分 系统的程序流程 系统性能的实验分析 基于整个系统的设计和实现 得出几点结论 总结 图1 1 论文组织结构 f i g u r ei is t r u c t u r eo f t h e s i s 东北大学硕士学位论文 第= 章系统的理论基础 第二章系统的理论基础 2 1w e b 技术概述 w e b 是基于客户机朋日务器方式的信息发现技术和超文本技术的综合。它是基于超 文本( h y p e r t e x t ) 方式的信息查询工具,它主要由一些应用软件以及系列协议和约定 组成,使用超文本和多媒体技术,以便于人们在互联网上交换信息,进行信息浏览和信 息发布。它有以下3 个主要特点; ( 1 ) 分布式的信息资源:i n t e r n e t 的信息资源具有极强的分布性。信息资源包含韵信 息指针可以引导用户端的客户机程序从一台计算机转移到另一台计算机。 ( 2 ) 统一的用户界面:由于采用客户机朋务器的工作方式,利用应用层网络协议进 行信息交换,因此可以支持各种计算机、各种操作系统、各种用户界面以及各种信息服 务。 ( 3 ) w e b 的智能化和兼容性使查询速度更快。世界上有几十万台、张b 服务器,所提 供的信息更是难以数计。通过w e b 浏览和搜索,超文本链接使用户在很短的时间里查 到所需的信息。 2 1 1w e b 的基本工作原理:请求响应机制 w e b 应用是完全建立在超级文本传输协- o s ( ( h y p e rt e x tt r a n s f e lp r o t o c o l ,h 1 f r p ) 之上 的。h t r p 是用于传输 r 坡件的一种简单的无状态请求响应协议。客户端的具 体用户使用浏览器,向网络上的一个服务器发出h 兀_ p 请求。这个请求与服务器的位置 信息一起由统一资源定位符( u n i v e r s a l r e s o u r c e l o c a t i o n ,u r l ) 来标志,服务器分析达到 的信息,然后向用户端浏览器返回一个响应,这个响应可以是普通的h t m l 3 t 件,多媒 体的图片、声音或视频文件,也可以是j a v a a p p l e t s 等任何可以被客户端识别并显示的内 容。一些特殊的u r l a 址会使服务器调用特殊的服务器端程序,使服务器生成动态的响 应t 一般是生成h t m l 威x m l 文件。这是所有w e b 应用程序工作的基本原理。 2 1 2 w e b 技术多层分布式体系结构 在多层应用的模式下,信息系统应用被分成表示层、应用层、数据层三个逻辑单元 每个逻辑单元分别运行在相互连接的计算机上,通过计算机网络共享数据和通信。 在结构上w e b 应用开发模式如图2 1 所示, 在结构& w e b 应用开发模式如图2 1 所示, 查! ! 查兰堡主兰堡垒查 笙三兰垒丝堕墨! 竺垄生 第二章系统的理论基础 2 1w e b 技术概述 w e b 是基于客户机朋艮务器方式的信息发现技术和超文本技术的综合。它是基于超 文本( h y p e r t e x t ) 方式的信息查询工具,它主要由一些应用软件以及一系列协议和约定 组成,使用超文本和多媒体技术,以便于人们在互联网上交换信息,进行信息浏览和信 息发布。它有以下3 个主要特点: ( 1 1 分布式的信息资源:i n t e r a e t 的信息资源具有极强的分布性。信息资源包含的信 息指针可以引导用户端的客户机程序从一台计算机转移到另一台计算机。 佗、统一的用户界面:由于采用客户机朋艮务器的工作方式,利用应用层网络协议进 行信息交换,因此可以支持各种计算机、各种操作系统、各种用户界面以及各种信息服 务。 0 州e b 的智能化和兼容性使查询速度更快。世界上有几十万台w e b 月i 务器,所提 供的信息更是难以数计。通过w e b 浏览和搜索,超文本链接使用户在很短的时间里查 到所需的信息。 2 1 1w e b 的基本工作原理:请求响应机制 w e b 应用是完全建立在超级文本传输协议( h y p e rt e x tt r a n s f e rp r o t o c o l ,i a t i a ) 之上 的。h t t p 是用于传输h m l ,文件的一种简单的无状态请求响应协议。客户端的具 体用户使用浏览器,向网络上的一个服务器发出h 兀甲请求。这个请求与服务器的位置 信息一起由统一资源定位符( u n i v e r s a lr e s o u r c el o c a t i o n ,u r l ) 来标志,服务器分析达到 的信息,然后向用户端浏览器返回一个响应,这个响应可以是普通的h t m l 文件,多媒 体的图片、声音或视频文件,也可以是j a v a a p p l e t s 等任何可以被客户端识别并显示的内 容。一些特殊的u r l 地址会使服务器调用特殊的服务器端程序,使服务器生成动态的响 应,一般是生成h t m 域x m l ,文件。这是所有w e b 应用程序工作的基本原理。 2 1 2w e b 技术多层分布式体系结构 在多层应用的模式下,信息系统应用被分成表示层、应用层、数据层三个逻辑单元 每个逻辑单元分别运行在相互连接的计算机上,通过计算机网络共享数据和通信。 在结构上w e b 应用开发模式如图2 1 所示。 东北大学硕士学位论文 第二章系统的理论基础 凰亘a p p l i c a t i o n ) : b r 。7 + 凰 w e bs e r v e r s e r v e r 紫 嘭d a t a b a s e 图2 1w e b 应用开发模式 f i g u r e2 1w e ba p p l i c a t i o nd e v d o p m e tm o d u l e 第一层是客户端w e b 浏览器。浏览器与w e b 服务器通过h t r p 协议进行通信。浏览 器通过h r 卯协议向w e b 服务器发送文档请求,w e b 服务器将h t m l 或者x m l 文本返回 给客户端浏览器。 第二层是w e b 服务器。w e b 服务器接受用户的请求并进行分析。如果用户是请求呶 是静态的h t m l 文本则服务器将直接h t m l 文件返回给浏览器。如果用户请求的是动态 的信息则根据需要进行处理,或者将请求交给a p p l i c a t i o ns e r v e r 进行处理,之后将处理 结果以h t m l ,x m l 文件形式返回给用户。 第三层位于w c b 服务器和企业数据资源层之间,负责处理应用系统的事务逻辑。具 体执行数据处理、业务逻辑的对象和组件等处在本层。该层的存在防止了客户层对数据 存储层的直接访问,大大地增强了整个系统的安全性。本层是w e b 开发模型的核心层, 传统的w e b 应用程序使用以通用网关接d ( c g i ) 为基础的开发技术,但是以新的w e b 应 用程序开发技术如a s p n e t 等更加高效、快捷,正在越来越多的为人们所使用。本文后 面将对a s p n e t 技术做详细的讨论。 第四层,称为数据层,包含应用系统的数据资源。在w e b 应用系统中本层包括数据 库和事物处理监控器,负责数据的存储并对存取过程进行管理,对它的存取是由第三层 来控制的。 层与层的区分完全是出于逻辑上的需要,它们之间并不是有着极为严格的区分界 限,这几层既可以分别运行于几台不同的机器上,也可以运行于两台或同一台机器上。 东北大学硕士学位论文 第二章系统的理论基础 分层的目的是使系统的结构更清晰,在进行软件的开发时的逻辑更清楚,分工更明确。 2 2w e b 应用技术 2 2 1 基于w e b 访问数据库的方式 2 2 1 ,lc g i ( 通用网关接口) 程序 c o l 是一种早期用于w e b 程序设计的接口标准,也就是说,只要遵循这套接口标准, 可以使用任何编程语言宋编制c g i 程序。不受开发语言的限制。例如c 、c + + 、v b 、d e l p h i 等。除了编程语言外,还可以使用脚本语言来开发c g i 。如p c r l 、p y t h o n 或u n i xs h e l ls c r i p t s 等。用p e r l 或是s h e l ls c r i p t 不需要编译的过程,直接就可以执行。若用d e l p h i 或c 等都要 经过编译才能执行。当然,要使用c g i ,也需要相应的w e b 服务器支持这一标准,常用 的w e b 务器软件,如a p a c h e ,n e t s c a p ee n t e r p r i s es e r v e r 以及m i c r o s o f ti i s 等,都能很 好地支持各种c o l 程序。 c g i 程序与w e b 服务器的交互主要有两种数据交换方式。在u n 或“n u x 下,是通 过标准输入输出来实现的,可以在服务端c g i 程序中直接通过标准输入来取得客户端传 来的请求和所传递的数据,然后对数据进行处理。服务端c g i 程序不但可以从标准输入 中取得用户所提交的内容,而且还可以通过服务器的环境变量,获得客户端资料,如客 户端的口地址,计算机名字,所使用的测览器,如果需要使用服务器认证功能,环境变 量还能提供客户端用户的登录名字以及口令等等。 在w i n d o w s 平台下,c g i 程序与w c b 服务器的数据交互则是通过p r o :丘1 e 文件来进行 的。当w e b 服务器接收到客户端的请求后,就把它们以k e y v a l u e 的i i l i 文件格式保存至暂 存文件以供c g i 程序来接收。因此,开发w i n d o w sc g i 程序的第一步就是对数据文件进 行拆解。p e r l ( p r a c t i c a le x t r a c t i o na n dr e p o r tl a n g u a g e ) 文字分析报告语言,是编写g i 程序 最流行的脚本语言,它具有强大的字符串处理能力,适合用于分割处理客户端f o r m 提 交的数据串,而且可以与多种流行的w e b 数据库处理软件相结合,编写出功能强大的 w e b 数据库程序。p e r l 是一种由解释器直接解释执行的语言,不同于使用c 或v b 等需要 预编译然后才能执行。 虽然p e r l 司 能被经常使用来编写w e b 程序的方法,但是仍然存在其不足之处,其中, 一个较为普遍的问题就是由于w c b 服务器运行时需要谓用解释程序,对p c r l 代码进行解 析。这样当站点的访问人数增加时。w c b 服务器的性能也就必然会随之下降。此外,p e f l 对数据库支持较弱,在某些情况下甚至会降低对数据库的存取速度。 c 0 1 的程序,由于是由操作系统直接管理,要破解的难度较高,实施攻击只能由操 作系统下手,而不能通过w c b 服务器,具有较好的安全性。另外由于操作系统直接管理 东北大学硕士学位论文 第二章系统的理论基础 c g i 的程序,它还具有相当好的稳定性,不会因c g i 程式错误导致w e b 服务器的不稳定。 2 2 1 2 服务器端脚本 目前的网络编程技术有很多是采用脚本语言作为编程语言。脚本语言具有和传统的 编程语言相似的语法结构和风格,只是为了方便网络应用程序的设计,对传统的编程语 言,如c 、v b 等进行了简化。例如,脚本语言允许用户在使用变量之前不需要声明变量 类型,变量类型直接由变量值决定,并且在使用过程中可以自由更改变量类型。 脚本语言的另外一个显著特点就是可以结合h t m l 语言共同使用。脚本语言与 h t m l 语言具有非常好的兼容性,使用者可以直接在脚本代码中加m m i 标签。或者在 m m 球签中加入脚本代码从而更好地实现页面控制,提供更加丰富的功能。当前最流 行的服务器端脚本语言主要有m i c r o s o f t 的a s p 、自由软件p h p 和a l l a i r e 的c o l d f u s i o n 。 为了区分同一页面中的脚本代码和h t m l l 弋码,不同的网络编程技术采用了不同的 定界符,将脚本代码包含在各自的定界符内。例如,a s p 代码使用的定界符为“ ”,p h p 使用的定界符为“ ”。c o l d f u s i o n 比较特殊,使用一种具有h t m l 标签风格的c f m l 技术,拥护自己特殊的标签,如“ ”等。此外, 使用不同网络编程技术编写的w e b 页面都具有各自不同的后缀名。例如,a s p 页曲的后 缀名为a s p ,p - i p 页面的后缀名p h p 3 ,c o l d f u s i o n 页面的后缀名c f m 。 与后缀名为h t m l 或h t m 的h t m l 页面样,使用不同技术编写的动态页面也被保存 在w e b 服务器内。当客户端用户向w e b 服务器发出访问动态页面的请求时,w e b 服务器 将根据用户所访问页面的后缀名确定该页面所使用的网络编程技术,然后把该页面提交 给与该扩展名相应的解释引擎:解释引擎扫描整个页面找到特定的定界符,并执行位于 定界符内的脚本代码以实现不同的功能,如访问数据库,发送电子邮件,执行算术或逻 辑运算等,最后把执行结果返回w e b j 狠务器;最终,w e b 服务器把解释引擎的执行结果 连同页面上的h t m l 内容以及各种客户端脚本一同传送到客户端。虽然,客户端用户所 接收到的页面与传统页面并没有任何区别,但是,实际上页面内容己经经过了服务端处 理,完成了动态的个性化设置。 2 2 1 3a s p 技术 a s f 。( a c t i v es e r v e rp a g e s ,即动态服务器页面1 是由微软公司推出的一种网络编程技 术。准确的说,a s p 不能算做是一种编程语言,因为a s p 没有提供自己专门的编程语言, 而是允许用户使用包括v b s c r i p t 、j a v a s c r i p t 等在内的许多己有的脚本语言编写a s p 的应 用程序。a s p 默认的脚本编写语言为v b s c r i p t ,但是用户可以根据自己的需要进行选择。 只要用户安装了相应的脚本引擎,就可以使用相应的脚本语言编写a s p 应用程序。 a s p 的一个最为显著的优势就是对c o m 对象的支持。象其它a s p 的元素一样,在 a s p t i p 使用c o m 对象也非常简单,只需一行代码就能够创建一个c o m 对象的实例。 查! ! 查芏堡主兰竺丝叁 堑三主墨丝盟兰堡堑生 a s p 的核心技术是对组件和对象技术的充分支持。通过使用a s p 的组件和对象技 术,用户可以直接在a s p 页面中使用a c t i v e x 控件、v i s u a l b a s i c 牟f 1 v i s u a l c + + 的c o m 对象 等,调用对象方法和属性,以简单的方式实现强大的功能。此外,用户同时还可以根据 自己的情况需要创建自己的c o m 对象,直接在a s p 页面中使用,可以使用v i s u a l b a s i c 、 v i s u a lc + + 或j a v a 等编写自己的c o m 对象。通过使用第三方开发的各种c o m 对象,可以 大大的节省开发人员编写代码的数量和时间,使用a s p 技术的简便性己经得到了人们的 普遍认可,但提供a s p 的i i s 服务器的稳定性和安全性提出了批评,曾经众所周知的漏洞 即是输入特定的命令参数竟然可以看到a s p 程序源代码。如果用户正在创建的站点对安 全性和稳定性有相当高的要求话,还是应当慎重考虑a s p 的取舍。不过在通常的情况下, m i c r o s o f ti i s 在安全和稳定性上还是能够满足应用的需求。 2 2 2 开发技术比较 c g i 是最早支持w e b 服务器扩展的技术,为网络的快速发展做出了巨大的贡献。它 除了具有上文提到的优势外,也有许多不足之处。 如果采用p e r l 等脚本来开发c g i ,虽然开发简便,但这样的c g i 程序运行缓慢,对每 个单独的请求,c g i 进程都要被加载,然后将脚本程序转化为内部机器码,其响应速度 较慢,此种程序只是对相对简单的任务比较合适。 如果使用由编程语言开发的特定平台的可执行的c g i 应用程序,相对来讲响应速度 能够得到提高,但同时应用程序也失去了的平台独立性。 c g i 程序执行起来比较浪费服务器资源。由于每个应用程序组件是一个独立的程 序,对于客户端的每一个请求,服务器都必须创建一个新的进程来进行响应,这就大大 地限制了w e b 服务者器能够响应的客户端请求的数量。大量的客户端请求就能够很快耗 尽服务器的内存和处理资源。每一个c g i 程序均在一个独立的进程中运行。一旦c g i 程 序开始执行以后,它就不再能够与w e b 服务器进行交互。 虽然菜些w e b 服务器供应商提供插件a p i s ,使得c g i 应用程序能够直接w e b 服务器 建立链接。使用这些a p i s 改进c g i 应用程序性能,但是同时使得在w e b n 务器之间移植 c g i 应用程序的难度更大了。而且,当进程处理完毕后。将不再保留关于该进程的所有 信息,也就是没有高速缓存信息的功能。这对于处理需要频繁请求的c g 程序,或当访 问量较大时,将会严重影响服务器的性能。 而且,当进程处理完毕后。将不再保留关于该进程所有信息,也没有高速缓存信息 的功能。这对于处理需要频繁请求的c g i 程序,或当访问量较大时,将会严重影响服务 器的性能。 另外,对每个请求都启动一个新的进程进行处理,使得在不同的请求之间,根本无 法达到资源和信息的共享,既使不同的请求是来自同一个客户时也是如此,使得在对资 东北大学硕士学住论文 第二章系统的理论基础 源进行操作时,很多时间浪费在打开和关闭连接上。 服务器端脚本开发起,开发起来比较方便、w e b 应用程序的方式是将脚本与h t m l 代码混合在一起。因此服务器端脚本语言得到了广泛的应用。 但它们的共有的不足之处在于:开发模式上数据与逻辑不分开,即脚本语言与 h t m l 4 - 码混合在一起。在一个脚本文件中不仅包含有控制返回页面显示的h t m u f 码,并且包含了处理业务逻辑的程序代码。并且两者常常混合在一起。这样就导致了设 计时的逻辑层次不够清晰。 代码和功能的复用性差。开发时如果用到功能性重复,必须要进行大量代码的粘贴 与复制。程序可读性较差,尤其对大型的程序,维护起来非常不方便。并且每当处理模 式或响应方法发生改变,可能要对许多文件做相同的重复性修改。 此类程序大都是依赖于特定的平台,在不同供应商提供的系统之间可移植性不好, 改换操作平台的代价很大。 h t m l 币面的编辑人员和应用程序开发人员的分工不明确,职能混淆。即复制设计 应用系统界面的人员和开发业务逻辑代码的工作人员分工不明确。在小型站点或项目中 此缺点并不明显,但如果在大型项目中使用此开发方式,开发人员之闻协调将会很困难。 2 2 3a s e n e t 应用技术 a s p n e t 应用程序是建立在n e tf r a m e w o r k 上的应用程序,n e tf r a m e w o r k 本身对 内存的管理功能,又使它具有极好的稳定性。当应用程序发生错误时,不会使整个服务 器瘫痪;它还引入了新的安全机制,使得程序具有较好的抗攻击能力;借助m i c r o s o f t v i s u a ls t u d i o n e t 开发工具a s p 玎应用程序的开发非常高效。由于该技术分离了w e b 应用程序的界面与代码并采用完全面向对象的技术来开发应用程序,使得应用程序的具 有很好的可重用性和可维护性。 现在,a s p 有了新发展,作为n e t 架构的一个重要组成部分a s p 称为a s p n e t , a s p n e t 是建立在微软新一代n e t 平台架构上,利用普通语言运行时( c o m m o n l a n g u a g er u n t i m e ) 在服务器后端为用户提供建立强大的企业级w e b 应用服务的编程框 架。 a s p n e t 与现存的a s p 保持语法兼容,实际上我们可将现有的a s p 源码文件扩展名 “a s p ”改为“a s p x ”,然后配置在支持a s p ,n e t 运_ 行时的i i s 服务器的w 曲目录下,即 可获得a s p 。n e t 运行时的全部优越性能。 a s p n e t 包括w e b f o r m 和w e b s e r v i c e 两种编程模型。前者为用户提供建立功能强 大,外观丰富的基于表单( f o r m ) 的可编程w e b 页面。后者通过对h 丌p 、x m l 、s o a p 、 w s d l 等i n t e m e t 标准的支持提供在异构网络环境下获取远程服务,连接远程设备,交互 远程应用的编程界面。 查查苎兰堡主兰竺塑查羔三童- 一塞竺兰里兰i 垄! 生 从企业网的技术现实来看,目前开发w e b 应用的技术中, 狳a s p n e t 外,其他方案 仍不适合快速开发强大的和交互式的基于网络的分布式应用程序的需要。所以本系统采 用a s p n e t 技术进行系统的开发环境。 在介绍a s p n e t 技术的背景和特点之前先来介绍一下n e t 框架。 2 2 3 1 n e t 框架 m i c r o s o f t n e t 给开发人员带来了一种全新的开发框架一一n e t 框架( n e t f r a m e w o r k ) 。在n e tf r 锄e w o r k 发布之前,程序是以w h 3 2a p 吸c o m 对象为接口,a s p 网页则是以a s p d l l 所提供的对象为接口,但n e tf r a m c w o r k 发布之后,不管是程序或网 页都是以n e t f r a m e w o r k 所提供的类库为接口,如图2 2 所示: 图2 2 n e tf r a m e w o r k 体系结构 f i g u r e2 2 n e tf r a m e w o r ka r c h i t e c t u r e ( 1 ) c l r ( c o m m o nl a n g u a g er u n t i m e ) c l r 是一个软件引擎,建立在操作系统上最底层的服务,用来加载应用程序,管理 代码的执行,进行相应的安全许可验证,并提供了一些使编程更加容易的服务机制。 c l r 环境是一个托管环境,类似于j v m ( j a v a v i r t u a lm a c h i n e ) 的作用。n 】螂序语 言编写的应用程序,在使用n e tf r a m e w o r k 提供的编译器编译后,产生的并不是c p u 可 执行的代码,而是一种独立于机器的中间语言代码i l ( i n t e r m e d i a t el a n g u a g e ) 。它在执行 时,由通用语言运行环境的类加载器( c l a s sl o a a e r ) 将中间语言螅程序代码载入内存,然 后通过实时编译,将其转化为c p u 可执行的机器代码。芷是由于通用语言运行环境具有 这种作用机制,所以用n e t 语言编写的程序可以在任何具有通用语言运行环境的操作 系统下执行,实现了m i c r o s o f t n e t 战略跨平台执行的目标。 在通用语一言运行环境出现之前,使用不同语言编写的对象只能通过二进制标准进 查些垄兰堡主芏垡笙墨 苎三主墨竺塑墨垒垄生 行通信,实现起来比较困难:而在n e t 平合上,通用语言运行环境使设计跨语言交互 的组件和应用程序更加简单。因为通用语言运行环境提供了公共语言规范c l s ( c o m m o n l a n g u a g es p e c i f i c a t i o n ) ,它定义了为符合c l s 规范而必须遵守的使用规则。c l s 规范包括 的许多应用程序都需要的基本语言特征。如果用户的组件在输出函数中只使用c l s 特 征,则这个组件就能够被其他支持c l s 语言编写的任何对象所访问。使用不同语言编写 的对象就可以相互通信,并且它们的行为被紧密的集成在一起。例如,用户可以在v b 中使用c + + 编写的类来创建对象,或者由它派生新类。另外,通用语言运行环境的跨语 言交互能力也使调试器能够理解使用多种不同语言编写的应甩程序并对它们进行调试, 同时这种能力也使得调试器能够以相同的方式跨越不同语言进行异常处理,即在一种语 言的代码中抛出的异常可以被其他语言的代码捕获和处理。在n e t 体系各种遵循c l r 规范语言可以方便的互相调用,实现了语言无关性。 同时通用语言运行环境它对于组件的运行和开发起着重要的作用。通用语言运行环 境管理内存、线程运行、代码运行、代码安全验证、编译和其他系统服务。这些是受控 代码的内建性能,并运行于通用语言运行环境中。当组件在运行时,它负责管理内存分 配、启动、结束进程、执行安全策略以及满足组件间可能存在的依赖性。而在开发时, 通用语言运行环境的作用会有所变化。由于其高度的自动化程度( 例如内存管理) ,通 用语言运行环境使程序员感觉开发变得异常简单,在与目前使用的c o m 相比时尤其如 此。除此之外,诸如映像这样的功能,极大的降低了将商用逻辑转化为可重用的组件时 的代码编写量。 由于通用语言运行环境处予这个框架的最低层,是这个框架的基础。c l r 负责语言 底层的细节,如对象的创建和释放、安全性管理、自动的内存和资源管理等等。一般而 言,基于通用语言运行环境开发的代码称为受控代码( m a n a g e rc o d e ) 。如果n e t 应用程 序使用的是受控代码,则可在其中使用受控数据( m a n a g ed a t a ) ,自动内存管理将负责消 除内存漏洞。编译器和工具负责解释运行库的功能,并允许用户编写能够从这种管理运 行环境中得益的代码一受控代码。受控代码能够使用跨语言集成、异常处理、安全强化、 版本和安装支持、简化的组件交互模型以及调试和优化等由通用语言运行环境提供的服 务。c l r 提供的这些服务有助于简化代码开发和应用程序的开发同时也将提高应用程序 的可靠性。 c l r 对加载和执行应用程序的编程模型做了根本的改变,它的存在有三个主要的目 标:( a ) 实现跨平台运行,多语言支持;( b ) 减少应用程序开发者所必须写的冗长而又易 出错的底层代码的容量;( c ) 提高应用程序的稳定性和安全性。 但) 公用层次类库 目前,c + + 开发者使用m f c ( m i c r o s o f tf o u n d a t i o nc l a s s ) 类库,j a v a 开发者使用 w f c ( w i n d o w sf o u n d a t i o nc l a s s ) 类

温馨提示

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

评论

0/150

提交评论