(计算机软件与理论专业论文)基于net能力测试系统的研究与实现.pdf_第1页
(计算机软件与理论专业论文)基于net能力测试系统的研究与实现.pdf_第2页
(计算机软件与理论专业论文)基于net能力测试系统的研究与实现.pdf_第3页
(计算机软件与理论专业论文)基于net能力测试系统的研究与实现.pdf_第4页
(计算机软件与理论专业论文)基于net能力测试系统的研究与实现.pdf_第5页
已阅读5页,还剩77页未读 继续免费阅读

(计算机软件与理论专业论文)基于net能力测试系统的研究与实现.pdf.pdf 免费下载

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

文档简介

摘要 素质教育是我国高等教育培养高质量人才所面临的新任务。各高校为顺应社 会发展,纷纷探索在新形势下的素质教育理论、实践体系和评价方式。素质教育 的评价结果,直接反映出素质教育培养模式的好与坏,因此,一个良好的评价体 系对学校素质教育的建设有着极其重要的意义。 本课题以系统的易用性、先进往、可扩展往、健壮性及安全性为设计目标, 在深入研究了各种先进的分布式计算技术和设计思想的基础上,根据地区和卒校 的实际需求设计与实现了一个能力测试系统。 本文首先分绍了能力测试系统的研发背景,概述了n e tf r a m e w o r k n e t r e m o t h a g 、a d o n e t 、a s p n e t 和w e b 服务的特性。在此基础上,提出了建设 能力测试系统的设计原则和指导方针,给出了能力测试系统的网络拓扑结构及功 能模块结构。通过对o m gc o r b a 、j 2 e e 和m i c r o s o t r n e t 这三种当前流行的 分布计算组件模型的分析比较,得出了m i c r o s o f t n e t 是最佳的远程处理平台的 结论,绘出了基于n e t 架构的能力测试系统软件体系结构设计。根据能力测试 系统的功能需求和系统设计目标,分析了系统的工作流程,文中着重介绍了本系 统数据库的概念结构设计、逻辑结构设计以及物理结构设计,并详细阐述了该系 统的总体设计、视图设计、模块设计、w e b 报务设计和系统的安全设计及实现。 关键词:素质教育,n e tf r a m e w o r k ,n e tr e m o t i n g ,w e b 服务 a b s t r a c t q u a l 埘e d u c a t i o ni sa n e wt a s kh i g h e re d u c a t i o nf a c et oi i o wf o rc u l t u r i n gh i g h q u a l i t yp r o f e s s i o n a l s u n i v e r s i t i e s i no u rc o u n t r ya z ea c t i v e l ys e e k i n ga f t e rt h e e d u c a t i o n a lt h e o r y , p r a c t i c es y s t e ma n de v a l u a t i o nm e c h a n i s mo fq u a l i t ye d u c a t i o n i no r d e rt os a t i s f yt h er e q u i r e m e n to fs o c i a ld e v e l o p m e n t e v a l u a t i o nm e c h a n i s mo f q u a l i t ye d u c a t i o nd i r e c t l yi m p a c t sc u l t u r i n gm o d eo fq u a l i t ye d u c a t i o n ,w h e r e f o r e ,a g o o de v a l u a t i o nm e c h a n i s mh a sv e r yi m p o r t a n c et oc o n s t r u c tt h eq u a l i t ye d u c a t i o n s y s t e m t h em a i ng o a lo ft h i sp r o j e c ti st om a k et h es y s t e mw i t he a s y t o u s e ,n o w a d a y s , r o b u s t ,e x t e r l s i b l ea n ds e c u r e ,c a p a c i t i e sb a s e do nt h er e q u i r e m e n t so fl o c a la r e aa n d o u rc o l l e g e f i r s t l y , t h er e s e a r c h a n d d e s i g nb a c k g r o u n do fs y s t e mi si n t r o d u c e d ,a n d t h e n e tf r a m e w o r k , n e tr e m o t i n g ,a d o n e t , a s p n e ta n dt h ep r o p e r t yo f w e b s e r v i c e sa r es u m m a r i z e di nt h et h e s i s b a s e do nt h i s , t h ed e s i g np r i n c i p l e & t h e g u i d e l i n eo fc o n s t r u c t i n ga n dn e t w o r kt o p o l o g y & f u n c t i o n a ls t r u c t u r eo f t h es y s t e m a r ep r e s e n t e d t h r o u g had e t a i l e dc o m p a r i s o na m o n gc o m p o n e n tm o d e l so fo m g c o r b a ,j 2 e e ,a n dm i c r o s o f t n e t , i ti sc o n c l u d e dt h a tm i c r o s o f t n e ti st h eo p t i m a l p l a t f o r mf o rr e m o t i n gp r o c e s s a c c o r d i n gt or e q u i r e m e n ta n a l y s i sa n dd e s i g nt a r g e to f s y s t e m ,t h ed e s i g n so fc o n c e p ts t r u c t u r e ,l o g i cs t r u c t u r ea n dp h y s i c a is t r u c t u r eo f t h e s u b s y s t e m sd a t a b a s ea r ee x p l a i n e dw i t he m p h a s i s f i n a l l y , a r c h i t e c t u r a ld e s i g n ,v i e w d e s i g n ,m o d u l ed e s i g n ,w e bs e r v i c e sd e s i g n ,s y s t e ms e c u r i t yd e s i g na r ee l a b o r a t e d k e yw o r d s :q u a l i t ye d u c a t i o n ,n e tf r a m e w o r k ,n e tr e m o t i n g ,w e bs e r v i c e s 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及 取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得电 子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工 作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示 谢意。 签名:兰盈垒日期:。伽j ,年厂月,。日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文的 规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允 许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或 部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制 手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 日 期:私睥期内日 第一章引言 第一章引言 1 1 研发背景 近年来,各高校在素质教育理论、实践和评价方面的研究取得了一些 成就,但是社会飞速发展的今天,学校培养的人才的质量仍无法满足社会 的需求,很多学习成绩优异的学生走向社会后无法立即适应工作岗位;学 生在找工作、面试时,虽然有扎实的专业基础,但因缺乏文化素养、公关 知识、面试技巧等综合素质而无法满足聘用单位的需求。这反映出了对现 行的素质教育模式、教育质量缺乏合理的评价方式。因此,各高校都在探 索能够适应社会需求的人才培养模式和评价体系。 本项目是来源于青海民族学院“加强学生综合素质教育”项目。在青 海民族学院素质教育评价中进行了试验性测试,取得了良好的效果。 知识经济初见端倪的现代社会,我国科教兴国战略迫切需要培养大批 高质量人才,面对新形势,我国高等教育必须研究未来社会对人才知识、 能力和素质结构的要求,转变教育思想,更新教育观念,深化教育改革, 提高教学质量,培养适应现代化建设需要的高素质人才,学校教育也从应 试教育转向素质教育。所谓素质教育是依据人的发展和社会发展的需要, 以全面提高全体学生的基本素质为根本目的,以尊重学生主体和主动精神, 注重开发人的智慧潜能,注重形成人的健全个性为根本特征的教育。素质 包括:思想道德素质、科学文化素质、身心发展素质、审美素质、劳动技 能素质。 在我国,素质教育的提法最早源于1 9 8 8 年2 月的人民日报,当时 刊出一篇由柳斌撰写的“提高劳动者素质是基础教育的根本任务”文章, 从此引起学者的注意。此后,“素质教育”一词被高等教育界所广泛引用。 江泽民同志在全教会的重要讲话、中国教育改革和发展纲要、 中共 中央、国务院关于深化教育改革,全面推进素质教育的决定大大推动了 我国素质教育的发展。 从目前我国素质教育现状来看,在理论和实践方面有一些成功的模 式,但在素质教育的评价方面还存在着很多不足: 对传统应试教育评价方式作简单的改进: 评价方式不能完全反映出学生的综合素质,教师进行评价时感情色 彩较浓; 第一章引言 评价方式不能形成一种竞争的激励模式,因而缺乏对社会竞争的适 应能力: 没有完全将学生作为学习的主体,学生没有主动性、积极性和灵活 性; 缺少充分运用现代化的手段( 信息管理系统、计算机网络、多媒体 等) 来进行客观地评价素质教育质量。 素质教育是提高人才质量的重要途径,素质教育评价的主体应包括两 个方面:教师和学生。教师是科学文化知识的传播者,是思想道德素质和 创新精神与实践能力的培育者,是人类灵魂的工程师。教师的素质直接影 响着所培养的人才的质量;学生是学校教育的直接产品,学校应培养出高 素质人才为我国社会主义建设服务。 在计算机技术与网络技术臼益成熟的今天,我们通过使用计算机技术 和网络技术来评价素质教育的两个主体,从而做到素质教育评价的客观性 和真实性,其意义在于( 1 ) 促进教师不断改进教学方法,全面推动以质 量为目标的教学模式;( 2 ) 也有效地激励学生的学习积极性、主动性和 灵活性,培养出能适应社会发展的高质量人才。 1 2 ,n e tf r a m e w o r k 1 2 1 n e tf r a m e w o r k 概述 n e tf r a m e w o r k 川是一种新的计算平台,提供个稳定、安全的跨程 序语言、平台的通用语言执行环境( c o m m o nl a n g u a g er u n t i m e ) 以及一 套应用程序可以调用的类函数库,协助程序设计师进行开发。它简化了在 高度分布式i n t e r n e t 环境中的应用程序开发。引用m i c r o s o f t 总裁兼首 席执行官史蒂夫鲍尔墨的话:“,n e t 代表了一个集合、一个环境、个 编程的基本结构,作为一个平台来支持下代的互联网。n e t 也是一个用 户环境,是一组基本的用户服务,可以作用于客户端、服务器或任何地方, 与改编成模式具有很好的一致性,并有新的创意。因此,它不仅是一个用 户体验,而且是开发人员体验的集合,这就是对n e t 的概念性描述”。n e t f r a m e w o r k 是微软在开发工具上的一个主要的策略转变【2 1 。n e tf r a m e w o r k 旨在实现下列目标: 提供一个一致的面向对象的编程环境,而无论对象代码是在本地存 储和执行,还是在本地执行但在i n t e r n e t 上分布,或者是在远程 第一章引言 执行的。即不论用什么操作系统( u n i x ,w i n d o w s 还是l i n u x ,o s 2 ) , 不论用什么程序设计语言( c 拌,c + + ,j a v a ,v b ) ,不论用什么设备 ( p d a ,p c ,e t c ) ,所有的软件一次书写,到处适用。 提供一个将软件部署和版本控制冲突最小化的代码执行环境。 提供一个保证代码( 包括由未知的或不完全受信任的第三方创建的 代码) 安全执行的代码执行环境。 提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。 使开发人员的经验在面对类型大不相同的应用程序( 如基于 w i n d o w s 的应用程序和基于w e b 的应用程序) 时保持一致。 按照工业标准生成所有通信,以确保基于n e tf r a m e w o r k 的代码 可与任何其他代码集成。 通过使用n e tf r a m e w o r k 编程,使程序员只注重于软件所实现的功能 和性能问题,而不需要关心数据的表示、通信,使用什么样的语言及如何 获取以有服务等。n e t 的核心思想是把软件变成服务,在采用了x m l 3 】 作为核心技术后,名种软件产品都将可能在网络上运行,不必像今天的软 件产品一样必须用光盘方式发送和安装,这种模式被称为w e b 服务,也是 新一代互联网的核心运行模式。n e t f r a m e w o r k 主要由以下部件组成:公 共语言运行环境( c l r ) 、f r a m e w o r k 类库、a s p n e t 以及a d o n e t ,如 图1 1 所示。 图l - 1 n e tf r a m e w o r k 第一章引言 公共语言运行环境( c l r ) 是用于运行和加载应用程序的软件组件, 在程序执行过程中,c l r 一般负责内存管理、启动、停止线程和进程、安 全控铡等任务。c l r 是一个多语言支持环境,它支持众多的数据类型和语 言,使设计跨语言的组件与应用变得更加容易,由v b n e t 、v c + + n e t 、 c 撑1 4 j 、j a 、,a 等不同语言设计的对象能够彼此间进行通信,并且它们的行 为能够紧密地综合与协调。 n e t f r a m e w o r k 类库,是一个与公共语言运行库紧密集成的可重用的 类型集合。对程序员提供所需用来编写在c l r 控制下运行的代码的软件组 件。它们按照单一有序的分级组织提供了一个庞大的功能集。 a s p n e t f 5 “卅1 7 3 是个已编译、基于n e t 的环境,可以用任何与n e t 兼容的语言创作应用程序。a s p n e t 可以无缝的与h t m l 编辑器和其他编 程工具一起工作,这不仅使得w e b 开发更加方便,而且还能提供这些工 具必需提供的所有优点,包括开发人员可以用来将服务器控件拖到w e b 页 上的g u i 和完全集成的调试支持。 a d o n e t 坤j 是m i c r o s o f t 特别为n e t 框架设计的数据访问层,它是一 种新的数据访问的a p i ,它在很大程度上利用了n e t 框架断开式数据结 构、与x m l 的紧密集成、能够组合来自多个不同数据源的数据的通用数 据表示形式以及为与数据库交互而优化的功能这几项优势。 1 2 2 n e tr e m o t in g 远程处理是跨程序或组件边界的交互过程,这种交互过程也可以在不 同进程或机器上进行交互f 9 】。远程处理是n e t 框架提供的一项强大的技 术,利用它可以使位于任何位置的应用程序互相通信,这些应用程序可能 在同台计算机上运行,也可能位于同一局域网中的不同计算机上,或者 位于相蹋万里的差异巨大的网络中。n e tr e m o t i n g 本质上是一种进程间 通信的实现方法,它提供了实现任意数量的全面通信方案的工具。它能够 使位于不同应用程序域中的对象互相之间进行通信,还能够使位于不同进 程中的对象互相之间进行通信,即使这些进程使用的传输协议、序列化格 式、对象生存期方案和对象创建模式不同,也是如此。 n e t 的远程处理服务提供了迸程间通信的籀象方法,它大大简化了分 布式对象的访问。在绝大部分情况下,服务程序通过简单的设置就可以把 本地对象变成可以为远程提供服务的远程对象:而客户端则可以以类似访 问本地对象的方法透明地访问远程对象。 第一章引言 1 2 2 1 可远程处理的对象 根据分布式应用程序的用途,有两种简单的对象类别:可远程处理的 对象和不可远程处理的对象f 1 引。不可远程处理的对象不向系统提供复制它 们或在其他应用程序中表示它们的任何方法。因此,这些对象仅可以从它 们的原始应用程序域中访问。可远程处理的对象既可以使用代理在其应用 程序域或上下文外部访问,也可以复制它们并且可以将这些副本传送到它 们的应用程序域或上下文外;换句话说,某些可远程处理的对象通过值传 递,而另些通过引用传送。 按值传递( m b v ) 对象声明它们的序列化规则( 通过实现 i s e r i a l i z a b l e 接口来实现其自身的序列化,或者通过 s e r i a l i z a b l e a t t r i b u t e 属性修饰,该属性通知系统自动序列化该对 象) ,但是不扩展m a r s h a l b y r e f o b j e c t 类。远程处理系统创建这此 对象的完整副本并将副本传递到进行调用的应用程序域。一旦副本 到达调用方的应用程序域内,对它的调用就是对该副本的直接调 用。 按引用封送( m b r ) 对象扩展s y s t e m m a r s h a l b y r e f o b j e e t 的可远程 处理的对象。根据己声明的激活类型,当客户端在自己的应用程序 域中创建m b r 对象的实例时,n e t 远程处理基础结构在调用方的 应用程序域中创建表示该m b r 对象的代理对象,并向调用方返回 对此代理的引用。然后客户端将在该代理上进行调用:远程处理封 送这些调用,将它们发送回起始应用程序域,并在实际对象上执行 该调用。 1 2 2 2 远程处理过程 远程处理的一般过程如图1 - 2 所示,其中服务器对象是可以远程处理 i 远程处理系统ll远程处理蒹统j 凄l | 信道 弋 c 厘d r 【 服务器对象 】 (客户端对象1 图1 2 n e t 远程处理过程 第一章引言 的对象。信道是一个承载数据流,根据特定网络协议创建包并将该包发送 到另台计算机的类型。某些信道只能接收信息,另外一些只能发送信息, 还有些( 例如默认的t c p c h a n n e l 和h t t p c h a n n e l 类) 可以在两个方向上使 用。 如果关系两端都是正确配置的,则客户端仅创建一个服务器类的新实 例。远程处理系统创建个表示该类的代理对象,并向客户端对象返回一 个对该代理的引用。当客户端调用方法时,远程处理基础结构将处理调用, 检查类型信息,并通过信道将该调用发送到服务器进程。侦听信道获得该 请求并将其转发给服务器远程处理系统,服务器远程处理系统查找( 或在 必要时创建) 并调用被请求的对象。然后,此过程将反向进行,服务器远 程处理系统将响应捆绑成消息并由服务器信道发送到客户端信道。最后, 客户端远程处理系统通过代理将调用的结果返回给客户端对象。 1 2 2 3 远程处理元素 如图1 3 所示,n e tr e m o t i n g 体系结构是基于五个核心对象。 消息由特殊的消息接收器( c h a n n e l s i n k ) 产纠。 并通过消息接收器链,当消息分派嚣接收到消剧 时,将它转换成服务器端的方法调用。j 图卜3 n e t 远程处理元素 代理:代理对象伪装成远程对象并提供调用; 消息:消息对象中包含了完成远程调用所必须的数据: 消息接收器:该对象允许客户在进行远程调用时进行消息处理; 格式化:该对象也是消息接收器,且将消息序列化为类似于s o a p 的传输格式; 第一章引言 信道:也是消息接收器,该对象将序列化的消息通过像h t t p 传送 给远程过程。 1 2 2 4 远程处理的优势 n e t 远程处理提供了用于实现任意数量的全面通信方案( 包括但不 仅限于x m lw e bs e r v i c e s ) 的工具。使用n e t 远程处理可以: 在任意类型的应用程序域中发布或使用服务,无论该域是控制台应 用程序、w i n d o w s 窗体、i n t e r n e t 信息服务( i i s ) 、x m lw e b s e r v i c e s 还是w i n d o w s 服务; 在二进制格式的通信中保持完整的托管代码类型系统保真度: 通过引用传递对象并返回到特定应用程序域中的特定对象; 直接控制激活特性和对象生存期; 实现和使用第三方信道或协议来扩展通信以满足特定要求; 直接参与通信进程以创建所需的功能。 1 2 3a d o n e i 尽管a d o 随着时间变化持续不断地演变为在客户应用程序和数据库之 间移动数据的优秀简单接口,但是它仍然一直不能清除最后的障碍,即不 能运行在i n t e r n e t 的多平台上。a d o 是平台专用的,它不仅依赖于有着相 同操作系统的客户,而且也依赖于相同的平台库 。为了适应w e b 开发, m i c r o s o f t 将a d o 升级为a d o n e t 。a d o n e t 提供对m i e r o s o f ts o ls e r v e r 等数据源以及通过o l ed b 和x m l 公开的数据源的一致访问。数据共享 使用者应用程序可以使用a d o n e t 来连接到这些数据源,并检索、操作 和更新数据。 a d o n e t 有效地从数据操作中将数据访问分解为多个可以单独使用 或一前一后使用的不连续组件。a d o n e t 包含用于连接到数据库、执行命 令和检索结果的n e tf r a m e w o r k 数据提供程序。可以直接处理检索到的 结果,或将其放入a d o n e td a t a s e 对象,以便与来自多个源的数据或 在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。 a d o n e td a t a s e t 对象也可以独立于n e tf r a m e w o r k 数据提供程序使 用,以管理应用程序本地的数据或源自x m l 的数据。 1 2 3 1a s p n e i 的设计目标 第一章引言 随着应用程序开发的发展演变,新的应用程序已基于w e b 应用程序 模型越来越松散地耦合。如今,越来越多的应用程序使用x m l 来编码要 通过网络连接传递的数据。w e b 应用程序将h t t p 用作在层间迸行通信的 结构,因此它们必须显式处理请求之间的状态维护。这一新模型大大不同 于连接、紧羯合的编程风格,此风格曾是客户端n 务器时代的标志。在 此编程风格中,连接会在程序的整个生存期中保持打开,而不需要对状态 进行特殊处理。 a d o n e t 的目的是为了满足全新的n e t 编程模型的以下要求:具有断 开式数据结构;能够与x m l 紧密集成;具有能够组合来自多个、不同数 据源的数据的通用数据表示形式;以及具有为与数据库交互而优化的功 能,这些要求都是n e tf r a m e w o r k 固有的内容。 为了满足上述要求,a d o n e t 的设计目标是: 利用当前的a d o 知识:1 ) a d o n e t 的设计满足了当今应用程序 开发模型的多种要求。同时,该编程模型尽可能地与a d o 保持一 致,这使当今的a d o 开发人员不必从头开始学习全新的数据访问 技术。a d o n e t 是n e tf r a m e w o r k 的固有部分,因此对于a d o 程 序员决不是完全陌生的。2 ) a d o n e t 与a d o 共存。虽然大多数 基于n e t 的新应用程序将使用a d o n e t 来编写,但n e t 程序 员仍然可以通过n e tc o m 互操作性服务来使用a d o 。 支持n 层编程模式:a d o n e t 为断开式n 层编程环境提供了一流 的支持,许多新的应用程序都是为该环境编写的。使用断开式数据 集这一概念己成为编程模型中的焦点。n 层编程的a d o n e t 解决 方案就是d a t a s e t 。 集成x m l 支持:x m l 和数据访问是紧密联系在一起的,即x m l 的 全部内容都是有关数据编码的,而数据访问越来越多的内容都与 x m l 有关。n e tf r a m e w o r k 不仅支持w e b 标准,它还是完全基 于w e b 标准生成的。x m l 支持内置在a d o n e t 中非常基本的级 别上。n e tf r a m e w o r k 和a d o n e t 中的x m l 类是同一结构的一 部分,它们在许多不同的级别集成。我们不必在数据访问服务集和 它们的x m l 相应服务之间进行选择;它们的设计本来就具有从其 中一个跨越到另一个的功能。 1 2 3 2a d o n e t 结构 第一童引言 n e t 中完成从数据操作中分解出数据访问的任务是两个核心组件: d a _ t a s e t 和n e t f r a m e w o r k 数据提供程序。如图l 一4 所示。 图1 - 4a d o n e t 结构 a d o n e td a t a s e t 是a d o n e t 的断开式结构的核心组件。d a t a s e t 实 现独立于任何数据源的数据访问。因此,它可以用于多种不同的数据据, 用于x m l 数据,或用于管理应用程序本地的数据。d a z a s e t 包含个或 多个b a t a t a b l e 对象的集合,这些对象由数据行和数据列以及主键、外 键、约束和有关d a t a t a b l e 对象中数据的关系信息组成。 。爿e tf r a m e w o y k 数据提供程序实现数据操作和对数据的快速、只进、 只读访问。c o n n e c t i o n 对象提供与数据源的连接。c o m m a n d 对象能够访 问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数 据库命令。d a t a r e a d e r 从数据源中提供高性能的数据流。d a t a a d a p t e r 提 供连接d a t a s e t 对象和数据源的桥梁。d a t a a d a p e r 使用c c m m a n d 对象 在数据源中执行s 。l 命令,以便将数据加载到d a t a s e t 中,并使对 d a t a s e t 中数据的更改与数据源保持一致。 1 2 4a s p n e t a s p n e t 不仅仅是下一版本的a c t i r es e r v e rp a g e ( a s p ) ;它是统 一的w e b 开发平台,用来提供开发人员生成企业级w e b 应用程序所需的 服务。a s p n e t 的语法在很大程度上与k s p 兼容,同时它还提供一种新 的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。可以通 第一章引言 过在现有a s p 应用程序中逐渐添加a s p n e t 功能,随时增强该a s p 应 用程序的功能。 a s p n e t 是一个已编译的、基于n e t 的环境,可以用任何与n e t 兼容的语言( 包括v i s u a lb a s i c ,n e t 、c # 和j s c r i p t ) 创作应用程序。 另外,任何a s p n e t 应用程序郝可以使用整个n e tf r a m e w o r k 。开发a 员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环 境、类型安全、继承等等。 当创建a s p n e t 应用程序时,开发人员可以使用w e b 窗体或x m l w e bs e r v i c e s ,或以他们认为合适的任何方式进行组合。每个功能都能得 到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据, 或者对应用程序的配置进行自定义。 1 2 ,4 , a s p ,n e t 窗体页 w e b 窗体页在任何浏览器或客户端设备中向用户提供信息,并使用服 务器端代码来实现应用程序逻辑。w e b 窑体页输出几乎可以包含任何支持 h t t p 的语言( 包括h t m l 、x m l 、j s c r i p t 、j a v a s c r i p t 等) 。其特点为: 基于m i c r o s o f ta s p n e t 技术; 兼容所有浏览器或移动设备; 兼容n 酊公共语言运行库所支持的任何语言; 基于m ic r o s o f t n e tf r a m e w o r k 生成; 具有灵活性。 w e b 窗体页用作要显示的静态文本和控件的容器。在曲窗体页中, 用户界面编程分为两个不同的韶分:可视组件和逻辑。可视组件是显示于 w e b 页面的控件;逻辑是与之交互的运行于服务器上的代码。a s p n e t 通 过模拟事件驱动模型的行为代替了a s p 的线性处理模型。提供a s p n e t 页框架以隐式地建立事件和事件处理程序的关联。利用该页框架,可以很 容易地创建响应用户操作的用户界面。 1 2 4 ,2a s p n e t 代码模型 w e b 页面中的可视组件和编程逻辑分别存放于不同的文件中,可视组 件存放在a s p x 静文件中,雨编程逻辑存放予另一个稚为代码跨藏文件约 单独的类文件( a s p x v b 或a s p x c s ) 中。类文件可以编译成d l l 文件 第一章引言 存放于w e b 服务器主目录的b i n 目录下,以提高访问页面的响应速度和性 能。当然通过a s p n e t 也可以创建类似于a s p 的单文件w e b 页面。 w e b 窗体页的结构如图1 5 所示。当系统为w e b 窗体页创建页和类文 件时,它将生成从基p a g e 类继承的代码。 设计时运行对 1 2 4 3a s p n e t 的优点 r - - 一 + l 一? ! 竺! :! ! ! , l 一r - 二j 图1 - 5a d o n e t 结构 与以前的w e b 开发模型相比,a s p n e t 拥有了n e tf r a m e w o r k 的强大 功能,因而a s p n e t 提供了很多优点: 】) 增强的编译性能。a s p n e t 是在服务器上运行编译好的代码,利用 提前绑定、即时编译、本机优化从而提高了性能。 2 ) 可视化的开发工具支持。a s p n e t 框架补充了大量工具箱和设计器。 这一强大的工具提供了所见即所得的编辑方式、拖放服务器控件、以及自 动部署等。 3 ) 灵活性。a s p n e t 是基于公共语言运行库,所以w e b 应用软件开发 者可以利用整个平台的强大功能和灵活性。 4 ) 简易性。从简单的窗体提交和客户端身份验证到部署和站点配置, a s p n e t 使执行常见任务变得容易。 第一章引言 5 ) 可管理性。a s p n e t 采用基于文本的分层配置系统,简化了将设置 应用于服务器环境和w e b 应用程序。由于配置信息是以纯文本形式存储的, 因此可必在没有本地管理工具帮助的情况下应用新设置。 6 ) 缩放性和可用性。a s p n e t 在设计时考虑了可缩放性,增加了专门 用于在聚集环境和多处理器环境中提高性能的功能。 7 ) 自定义性和扩展性。a s p n e t 随附了一个设计周到的结构,它使开 发人员可以在适当的级别插入代码。也可以用自己编写的自定义组件扩展 或替换a s p n e t 运行库的任何子组件。 8 ) 安全性。a s p n e t 与m ic r o s o f t n e tf r a m e w o r k 及m i c r o s o f t i n t e r n e t 信息服务( i i s ) 协同工作以提供w e b 应用程序安全性。 9 ) 事件驱动编程模型。事件驱动编程模型使w e b 页面只执行页面事 件的响应代码而不将整个页面代码顺序性地再执行一遍。另外,将事件响 应代码与w e b 页面元素分离,使用使代码维护非常方便。 1 3w e b 服务概述 随着w e b 应用的不断发展,人们发现在w e b 应用和传统桌面应用之 间存在着连接的鸿沟,人们不得不重复地将数据在w e b 应角和传统桌面应 用之间迁移,这成为了阻碍w e b 应用进入主流工作流的一个巨大障碍。如 何去解决语言差异、平台差异、协议差异、数据差异所带来的高代价的系 统集成是这个问题的关键。从1 9 9 8 年开始发展的x m l 技术及其相关技术 已证明有可能解决这个问题。而现如今蓬勃发展的w e b 服务技术则正是 基于x m l 技术的针对这一闯题的最佳解决方案。 w e b 服务的主要目标就是在现有的各种异构平台的基础上构筑一个通 用的与平台无关、语言无关的技术层,名种不同平台之上的应用依靠这个 技术层来实施彼此的连接和集成【i2 1 。w e b 服务提供应用程序之间可扩展 的、互操作的框架【l 。w e b 服务是基于x m l 的,能穿越防火墙的,轻量 级的,受到所有公司的支持”“。各大主流技术提供商无一不在关注和推动 w e b 服务的发展,从m i c r o s o f t 的n e t 架构,到s u n 的s u no n e ,再到 i b m 的i b mw e bs e r v i c e s ,无一不体现了这些重量级的技术提供者对w e b 服务的推崇的重视。如今,w e b 服务已经非常普及,用户通过i n t c r n e t 能 够使用各种各样的w e b 服务1 1 5 【i6 1 。 从w e b 服务的技术层面看,为了满足建立在资源动态变化之上业务 第一章引言 日益复杂的商务应用的需求【l “,w e b 服务有效地利用现有的w e b 数据集 成1 8 】、数据过滤【1 9 1 、服务组合等技术,以进行w e b 上分散资源的集成, 并在其中应用访问控制2 们、事务机制【2 。以保证服务响应的可靠性及服务 组件的协同工作。从w e b 服务的现实应用层面看,实际应用中客户面对 表现形式和复杂性都可能不相同的服务,如何正确、高效地找到自己想要 的服务至关重要,这正是w e b 服务发现的任务。目前,w e b 服务的搜索 与发现采用的普遍方法是由客户使用搜索弓f 擎找至4 服务,或者在相关的 w e b 页面中考查其是否满足服务请求的要求。 1 3 1w e b 服务的定义 由于x m l 能够解决服务器之间传递请求,响应消息,w e b 服务开始运 用于分布式系统中用来商业和信, g n 务2 2 1 。w e b 服务可以被认为是一种部 署在w e b 上的对象,同对w e b 服务的基石是以x m l 为主的,开放的w e b 规范技术。 w e b 服务是描述了一些操作的接口,通过标准化的x m l 消息传递机 制,可以通过网络访问这些操作。w e b 服务是用标准的、规范的基于x m l 的w s d l 语言描述的,这使得基于w e b 服务的应用程序具备松散耦合、 面向组件和跨技术实现的特点。w e b 服务是真正与平台无关的、模块化的、 彦包含的、自描述的软件组件f 2 3 1 ,它能够发现其他组件并进行企业事务处 理1 2 4 1 。 w 3 c 将w e b 疆务定义为:一个软件系统,用于支持网络上可互操作的 机器到机器的交互。w e b 服务有一个界口,该界口以机器可处理的格式来 描述( 一般采用w e b 服务描述语言w s d l ) 。其他的系统与w e b 服务通过 s o a p 消息中描述的方式进行交互,一般使用x m l 串行化、h t t p 来传 送消息,以便与其他w e b 相关的标准协作 2 5 1 。通俗她讲,w e b 服务包括 以下几个方面的内容: 用u r i 标识; 第一章引言 通过标准的w e b 协议进行访问 基于x m l 的消息发送、接收和交互能力; v ,没有用户干预的应用程序之间交互的能力。 1 3 2w e b 服务体系结构及协议栈 w e b 服务体系结构f 2 6 】f 2 7 1 基于三种角色即服务提供者、服务注册中心和 服务请求者之间的交互,如图1 - 6 所示。 图1 - 6w e b 服务体系结构 服务提供者将其服务发布到服务代理的一个目录上;当服务请求者需 要调用该服务时,他首先利用服务代理提供的目录去搜索该服务,得到如 何调用该服务的信息;然后根据这些信息去调用服务提供者发布的服务。 当服务请求者从服务代理得到调用所需服务的信息之后,通信是在服务请 求者和提供者之间直接进行,而无须经过服务代理。w e b 服务体系使用一 系列标准和协议实现相关的功能,例如:使用w s d l ( w e bs e r v i c ed e s c r i p t i o n l a n g u a g e ) 来描述服务,使用u d d ( u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r y , i n t e g r a t i o n ) 来发布、查找服务,而s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 被 用来执行服务调用1 。 为了完成在松散耦合环境下的对象访问,以及在基本对象访问之上的 事务、工作流、安全机制等,w e b 服务体系需要有系列的协议规范来支 第一章引言 撑,图1 7 所示w e b 服务协议栈。 图1 - 7w e b 服务协议栈 w e b 服务的核心是x m l 技术,消息的传送、服务描述和注册都是使 用x m l 来进行数据描述的,使用s o a p 协议来描述和交换消息,使用 w s d l 来描述服务,使用u d d i 来注艘、发布和发现服务。雨w e b 服务中 数据的传输是基于h t t p 、s m t p 等在 n t e r n e t 上广泛使用的协议。因此, w e b 服务使用现有的、成熟的技术来构建分布式应用程序。 1 3 2 1s o a p s o a p ( s i m p l e o b j e c t a c c e s s p r o t o c o l ,简单对象访问协议) 为在一个 松散的、分布式的环境中使用x m l 对等地交换结构化的和类型化的信息 提供了一个简单的、轻量级的机制。s o a p 本身并不定义任何应用语义, 它只定义了一个简单的机制,通过一个模块化的包装模型和对模块中特定 格式编码的数据的重编码机制来表示应用语义【29 1 。它由四个部分组成: s o a p 信封它构造定义了一个整体的表示框架,可用于表示在消 息中的是什么,谁应当处理它,以及这是可选的还是强制的( 所谓 可选的就是可以由目标应用程序自己选择是否处理,而强制则是表 明必须处理,如果无法处理,则需要返回错误) 。 s o a p 编码规则定义了一个数据的编码机制,通过这样一个编序 机制来定义应用程序中需要使用的数据类型,交保用于交换由这些 第一章引言 应用程序定义的数据类型所衍生的实例。 s o a pr p c 表示它定义了一个用于表示远端过程调用和响应的 约定。 s o a p 绑定定义了一个使用底层传输协议来完成在节点间交抉 s o a p 信封的约定。 1 ,3 2 2w s d l w s d l ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ,w e b 服务描述语言) 是 一个基于x m l 的、用于描述w e b 服务调用接口的语言,描述内容包括 w e b 服务所涉及的数据交换、使用灼协议以及在w e b 上的部署位里。 w s d l 将w e b 服务描述定义为一组服务访问点,客户端可以通过这些 服务访问点对包含面向文档信息或面向过程调用的服务进行访问。w s d l 首先对访问的操作和访问时使用的请求响应消息进行抽象描述,然后将其 绑定到具体的传输协议和消息格式上,以最终定义具体部署的服务访问 点。 1 3 2 ,3u d d i u d d i ( u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r ya n di n t e g r a t i o n ,统一描述、 发现和集成协议) 是w e b 服务架构下核心的服务描述、发现和集成机制, 提供了一种让客户端动态

温馨提示

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

评论

0/150

提交评论