已阅读5页,还剩60页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i , - r r e s e a r c ha n di m p l e m e n t a t i o no f a j a xt e c h n o l o g ya n dj 2 e e a r c h i t e c t u r e - b a s e dr i ai n t e g r a t i o nf r a m e w o r k at h e s i ss u b m i t t e dt o d a l i a nm a r i t i m eu n i v e r s i t y i np a r t i a lf u l f i l l m e n to ft h er e q u i r e m e n t sf o rt h ed e g r e eo f m a s t e ro fe n g i n e e r i n g b y q i a oy u e y i n g ( m a n a g e m e n ts c i e n c ea n de n g i n e e r i n g ) t h e s i ss u p e r v i s o r :p r o f e s s o rc h e ny a n m a y 2 0 1 1 - 产- t ,- , - _ 、_ 、-一 一 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成硕士学位论文 = = 基王j 垒墨蕉查壁i i 呈垡曼苤捡的基i 篡盛筵袈鳆班窥量塞 现”。除论文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集 体,均己在文中以明确方式标明。本论文中不包含任何未加明确注明的其他个人 或集体已经公开发表或未公开发表的成果。本声明的法律责任由本人承担。 学位论文作者签名:香日夷 学位论文版权使用授权书 本学位论文作者及指导教师完全了解大连海事大学有关保留、使用研究生学 位论文的规定,即:大连海事大学有权保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。同意将本学位论文收录到中国优秀博硕士 学位论文全文数据库( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论 文全文数据库( 中国科学技术信息研究所) 等数据库中,并以电子出版物形式 出版发行和提供信息服务。保密的论文在解密后遵守此规定。 本学位论文属于:保密口在年解密后适用本授权书。 不保密孓:请在以上方框内打“”) 论文作者签名:香只炙导师签名: 昧丝 日期:2 0 1 1 年月二7 日 - 一、 _ _ , 中文摘要 摘要 随着w e b 2 0 的兴起,如何提高用户交互体验成为广大开发设计人员讨论的热 点,作为w e b 2 0 核心技术的a j a n 也逐渐得到广泛的关注、研究和应用。a j a x 最 大的优势之一是能够提供浏览器端和服务器端异步交互的功能,这种交互方式有 效地降低了服务器的负担。本文通过深入研究a j a x 技术及其框架和j 2 e e 体系结 构下最流行的开源框架之一w s h ( w e b w o r k + s p r i n g + h i b e r n a t e ) ,结合目前比较 成熟的m v c 模式,根据各自的特点,提出了基于a j a x 技术及j 2 e e 架构的r i a 集成框架,从而提高程序的可重用性和易扩展性,并降低后期维护的复杂度。 在本文提出的基于a j a x 技术及j 2 e e 架构的r i a 集成框架的基础上,实现了 横向审批管理系统的具体设计和开发,进一步论证了将a j a x 框架融入到j 2 e e 框 架中的可行性和可操作性。在具体的应用开发中,实现了主动刷新请求、被动定 时局部刷新,并利用a j a x 中d w r 框架的反推机制,实现了服务器端推送功能。 最后经过总结得出结论,该集成框架能够降低表现层、业务逻辑层和数据持久层 之间的耦合度,使得w e b 应用层次分明,可重用性强,而且通过a j a x 技术及其框 架的使用,解决了很多传统w e b 应用中普遍存在的问题,在很大程度上改善了浏 览体验。 在具体的设计实现上,本文提出了将d w r 框架和w s h 框架完美整合无缝连 接的开发模式,并将该开发模式应用到横向审批管理系统的实际开发中,以实际 应用展示了这种整合所带来的巨大优势。 关键词:w c 模式;a j a x ;w s h 框架;d w r 框架;集成框架 英文摘要 a b s t r a c t w i t ht h er i s eo fw 曲2 0 ,t h ei m p r o v e m e n to fu s e ri n t e r a c t i o ne x p e r i e n c eb e c o m e sa h o tt o p i ca m o n gt h em a j o r i t yo fd e v e l o p e r sa n dd e s i g n e r s a j a x ,a st h ec o r et e c h n o l o g y o fw e b 2 0 ,h a sb e e ng r a d u a l l yw i d e s p r e a dc o n c e l l l ,r e s e a r c ha n da p p l i c a t i o n o n eo ft h e b i g g e s ta d v a n t a g e so fa j a xi st h ea b i l i t yt o o f f e ra s y n c h r o n o u si n t e r a c t i o nb e t w e e n b r o w s e r - s i d ea n ds e r v e r - s i d e t h i sa p p r o a c ho fi n t e r a c t i o nc a ne f f e c t i v e l yr e d u c et h e b u r d e no nt h es e r v e r t h r o u g hi n - d e p t hs t u d yo na j a xt e c h n o l o g ya n dw s hw h i c hi s o n eo ft h em o s tp o p u l a ro p e ns o u r c ef r a m e w o r ku n d e rt h ej 2 e ea r c h i t e c t u r e ,c o m b i n i n g t h em v c p a t t e r nw h i c hi sr e l a t i v e l ym a t u r en o w a d a y s ,a c c o r d i n gt ot h ec h a r a c t e r i s t i c s o ft h e m ,t h ea r t i c l ep r o p o s e dar i af r a m e w o r kw h i c hi sb a s e do na j a xt e c h n o l o g ya n d j 2 e ea r c h i t e c t u r e ,i tc a nn o to n l yi m p r o v et h er e u s a b i l i t ya n dp r o g r a ms c a l a b i l i t y , b u t a l s or e d u c et h ec o m p l e x i t yo fp o s t - m a i n t e n a n c e b a s e do nt h ei m e 铲a t e df r a m e w o r k , t h i sa r t i c l eh a sb e e na c h i e v e dt h es p e c i f i c d e s i g n a n d d e v e l o p m e n t o fh o r i z o n t a l a p p r o v a lm a n a g e m e n ts y s t e m , f u r t h e r d e m o n s t r a t i n gt h ef e a s i b i l i t ya n do p e r a b i l i t yo ft h i sf r a m e w o r k t h ea r t i c l er e a l i z e d a c t i v ea n di n a c t i v er e f r e s h ,a l s oa c h i e v et h es e r v e r - s i d ep u s h b yu s i n gt h ed w ri n v e r s e m e c h a n i s mi na j a x f i n a l l yc o m e st h ec o n c l u s i o nt h a tt h ei n t e g r a t e df r a m e w o r kc a n r e d u c et h ec o u p l i n ga m o n gt h ep r e s e n t a t i o nl a y e r , b u s i n e s s1 0 西ca n dd a t ap e r s i s t e n c e l a y e r , i nt h es a m et i m e ,i tm a k e st h el a y e r sc l e a ri nw e ba p p l i c a t i o n sw i t hh i g h l y r e u s a b l e b yu s i n ga j a xa n di t sf r a m e w o r k , t h i sa r t i c l eh a sb e e ns o l v e dm a n yp r o b l e m s i nt r a d i t i o n a lw e ba p p l i c a t i o n sa n dg r e a t l yi m p r o v e dt h ei n t e r a c t i o ne x p e r i e n c e t h i sa r t i c l ep r o p o s e dad e v e l o p m e n tm o d e l 、析ms e a m l e s si n t e g r a t i o nb e t w e e n d w ra n dw s hf r a m e w o r ki ns p e c i f i cd e s i g n i n ga n di m p l e m e n t a t i o n w i t ht h eu s i n go f t h i sd e v e l o p m e n tm o d e l ,t h ea r t i c l ea c h i e v e dh o r i z o n t a la p p r o v a lm a n a g e m e n ts y s t e m w h i c hd e m o n s t r a t e st h ee n o r m o u sa d v a n t a g e so ft h i si n t e g r a t i o n k e yw o r d s :m v cp a t t e r n ;a j a x ;w s hf r a m e w o r k ;d w rf r a m e w o r k ; i n t e g r a t i o nf r a m e w o r k 目录 目录 第1 章绪论1 1 1 研究背景1 1 2 国内外发展现状2 1 3 本文研究的主要内容3 1 4 本文的组织结构3 第2 章相关技术概述一5 2 1m v c 思想的介绍5 2 1 1m v c 设计模式5 2 1 2m v c 设计模式的特点。6 2 2w s h 框架介绍6 2 3a j a x 技术介绍10 2 3 1a j 8 x 简介1 0 2 3 2a j a x 基本特点1 1 2 3 3a j a x 核心技术1 2 2 3 4a j a x 工作机制。17 2 3 5a j a x 框架1 9 2 3 6a j a x 应用开发面临的问题。2 1 2 4 本章小结2 2 第3 章应用框架的设计与实现2 3 3 1a j a x 在m v c 模式中的应用2 3 3 1 1 基于a j a x 的m v c 模式2 3 3 1 2d w r 框架详述2 4 3 2 基于a j a ) 【的w s h 集成框架2 7 3 2 1d w r 与w s h 框架的整合分析2 7 3 2 2 框架总体设计2 9 3 3 集成框架特点31 3 4 本章小结3 2 第4 章a j a x 在横向审批管理系统中的实现3 3 4 1 主动刷新请求的实现3 3 4 2 被动定时局部刷新的实现4 2 4 3 服务器端推送的实现4 4 4 4 本章小结4 8 目录 第5 章总结与展望4 9 参考文献51 致 谢5 4 基于a j a x 技术及j 2 e e 架构的r i a 集成框架的研究与实现 第1 章绪论 1 1 研究背景 传统的w e b 应用架构是一个同步的请求响应系统,由用户向w e b 服务器发送 h t t p 请求,服务器接收传过来的表单,并进行相应的处理,然后返回给客户端一 个新的h t m l 页面。这种机制存在很多弊端,主要表现在以下几个方面:浪费 大量的通信带宽,因为无论一次交互所涉及的数据项是多是少,都要返回一个完 整的h t m l 页面,而用户都要重新加载整个页面;响应速度慢,每次应用的交 互都需要向w e b 服务器发送请求,而且这种独占式请求在得到响应之前,不能发 送其他请求,因此用户浪费很多时间在等待上。这些不足逐渐成为w e b 应用发展 的障碍,也为异步交互模式的出现奠定了基础。 a j a x ( a s y n c h r o n o u sj a v a s c r i p ta n dx m l ) 技术是最近几年w e b 开发中最热门的 技术之一,是一种新的、综合性的w e b 客户端技术,利用a j a x 可以创建很丰富的 基于浏览器的、高度交互的w e b 应用。 a j a x 技术的诞生,使得w e b 应用程序有了全新的异步交互模式,给用户带来 了全新的浏览体验。a j a x 提供与服务器异步通信的能力,使用异步数据传输方式, 并且能够动态构造w e b 页面,它可以将部分事务逻辑的处理工作放在发出请求的 客户端机器上完成,从而使用户从请求响应的循环中解脱出来,提高了响应的灵 敏度,用户甚至感觉不到浏览器与服务器之间的通信。利用a j a x 技术,应用开发 人员可以向服务器请求页面中的某一个模块或组件,而不是整个页面,即实现了 局部刷新,极大提高了w e b 应用程序的执行效率,提升了用户的使用体验。 目前,a j a x 的应用领域越来越广,例如表单驱动型应用的交互、深层次的树 状导航等,越来越多的商业w e b 站点和商业w e b 应用也开始选择基于a j a x 技术 来实现,a j a x 正在推动w 曲饷进一步广泛发展。然而,a j a x 技术在为广大用户带 来新机遇的同时,也带来了新的挑战,它使得客户端可以轻松地与不同的服务端 交互,这虽然减轻了服务器端的负担,也不可避免的使客户端的编程逻辑复杂化。 伴随着a j a x 的快速发展和其应用领域的不断扩大,出现了很多优秀的a j a x 开源框 架。开发人员通过选择合适的应用框架,不仅大大减轻了开发负担,提高了软件 的健壮性和自己的工作效率,而且进一步加强了对于项目成本和项目进度的整体 第1 章绪论 控制。例如浏览器端a j a x 开发框架的典型代表p r o t o t y p e 、s c r i p t a c u l o u s 、d o j o 、 y u i 、j q u e r y ,比较流行的服务器端框架有d w r ( d i r e c tw e br e m o t i n g ) 、a j a x n e t 、 g w t ( g o o g l ew | e bt o o l k i t ) 等。为了解决各种现有的应用上的问题,有时候我们需 要将a j a x 技术以及恰当的a j a x 框架与既有框架整合,本文就是将a j a x 应用于 w s h ( w e b w o r k + s p r i n g + h i b e m a t e ) 集成框架,解决了很多技术上的、应用上的难题, 例如基于微资源的主动刷新请求、办公助手中的被动定时局部刷新以及d w r 框架 下的服务器端推送技术等。 a j a x 是目前被广泛认可的一种r i a ( r i c hi n t e m e ta p p l i c a t i o n ,富互联网应用) 技术,与众多其他r i a 技术相比,它能够与h t m l 进行无缝集成,提供高度的互 动性和丰富的用户体验,将其与具有良好扩展性的j 2 e e 平台整合逐渐成为一种趋 势,为开发人员减轻负担的同时,也很大程度上改善了用户体验。 1 2 国内外发展现状 目前,a j a x 技术及其框架已经被国内外很多业界巨头应用到具体的企业级的 产品开发中,它正逐步成为w e b 应用的主流开发技术之一。 a j a x 技术最早应用于g o o g l e 在2 0 0 4 年初推出的b e t a 版本的g m a i l 服务中, 此后,伴随着w e b 标准的成熟以及软件交互设计和可用性理论的成熟,g o o g l e 又 相继推出了g o o g l e s u g g e s t 、g o o g l e m a p s 等大量的a j a x 应用,其中,g o o g l e m a p s 被公认为最优秀的也是最复杂的a j a x 应用。g o o g l e m a p s 突破了原来的地图应用技 术,通过a j a x 彻底避免了对主页面的重载,用户可以任意拖拽地图到目标浏览位 置,同时,a j a x 技术提供的异步通信功能使它能够在服务器端把所选位置周围的 图片文件下载到客户端并进行缓存,让用户几乎感觉不到其与后台的通信,就好 像是即时响应的。 除了g o o g l e 公司之外,a j a x 的典型应用还包括微软推出的w i n d o w s l i v e 、 y a h o o 的f l i e k r 、a m a z o n 提供的搜索工具a 9 等等。一些大型网站如s a b r e 等为了 减少响应时间和提高性能,也开始使用a j a x 。i b m 、o r a c l e 、y a h o o 、r e d h a t 、n o v e l l 等业界领先的公司启动了o p e n a j a x 项目,致力于为a j a x 的开发建造先进强大的 开发工具。虽然s u n 动作迟缓,最近也开始将a j a x 技术加入到j 2 e e 技术中,作 为它的有益补充。 基于a j a x 技术及j 2 e e 架构的r i a 集成框架的研究与实现 在国内,也有很多公司将a j a x 技术应用于企业实际产品开发中,而且达到了 预期的效果,如网易、新浪、腾讯、搜狐等。但是相对国外,国内的a j a x 发展和 研究水平较低,对a j a x 的应用大多停留在使用j a v a s c r i p t 的技术层面上,而没有 完全在系统设计的初期,就把a j a ) 【技术作为设计的因素加入进去,a j a x 技术在国 内仍然需要得到深入的研究、开发和更广泛的普及。 在过去的两到三年中,r i a 经历了飞速发展,它提供了比传统h t m l 更丰富 的客户端。a j a n 作为r i a 技术的一种,已经有很多公司将其与现有j 2 e e 架构整 合,成为一个新的功能更强大的r i a 集成框架,进一步构建出了更为直观、易于 使用、响应更迅速并且可以脱机使用的应用程序。例如,a j a x 技术与 s s h ( s t r u c t s + s p r i n g + h i b e m a t e ) 框架的整合,与w s h ( w e b w o r k + s p r i n g + h i b e r n a t e i ) 框架的整合。 1 3 本文研究的主要内容 为了进一步提高w e b 应用的性能,给用户提供更加流畅、快捷和人性化的用 户交互体验,本文深入研究了a j a x 技术以及当前非常流行的j 2 e e 框架- w s h , 根据各自的优缺点对它们进行整合分析,构建出基于a j a x 技术及j 2 e e 架构的r i a 集成框架。本文详细论述了a j a x 的服务器端框架d w r ,并深入探讨了面向 a j a ) 【技术和w s h 框架的r i a 集成框架的设计与实现方法,并将其应用于横向审 批管理系统。在该集成框架的基础上开发实际应用,不仅使得w e b 应用层次分明、 可重用性强、具有一定的通用性和健壮性、具备良好的可扩展性,而且具有良好、 丰富的用户体验。 本文主要实现了d w r 框架和w e b w o r k 、s p r i n g 、h i b e r n a t e 的整合,充分利 用d w r 提供的客户端与服务器端的异步通信功能,提出了一种新的r i a 集成框 架开发模式,改进了当前w e b 应用中普遍存在的一些问题,进一步体现了w e b 2 0 概念中交互性与平台性的统一。 1 4 本文的组织结构 本文共分为五章,具体组织结构如下: 第一章:绪论。主要阐述了本文的研究背景,简要介绍了a j a ) 【和其相关技术 的国内外发展现状,以及论文的主要内容和组织结构。 第1 章绪论 第二章:相关技术概论。主要阐述了m v c 设计模式、w s h 框架、a j a x 技术 及其框架的基本理论。 第三章:应用框架的设计与实现。详细论述了a j a x 的服务器端框架d w r , 进一步深入分析d w r 与w s h 框架的整合,最后将d w r 融入到w s h 框架中, 提出基于a j a x 技术及j 2 e e 架构的r i a 集成框架。 第四章:a j a x 在横向审批管理系统中的实现。将本文在第三章中提出的基于 a j a x 技术及j 2 e e 架构的r i a 集成框架应用于横向审批管理系统的具体开发中。 简要介绍了主动刷新请求、被动定时局部刷新以及服务器端推送技术的实现过程。 第五章:总结与展望。对论文的主要内容进行总结,并简要介绍了下一步要 进行的研究工作。 基于a j a x 技术及j 2 e e 架构的r i a 集成框架的研究与实现 第2 章相关技术概述 2 1m v g 思想的介绍 m v c 并不是j a v a 语言所特有的设计思想,也并不是w e b 应用所特有的思想, 它是所有面向对象程序设计语言都应该遵守的规范【8 1 。 m v c 思想将应用中各组件按功能进行分类,包括三个基本部分:m o d e l ( 模 型) 、v i e w ( 视图) 、c o n t r o l l e r ( 控制器) ,不同的组件使用不同的技术,被封装在 相应的层之内,以低耦合的方式组合在一起协同工作,从而提高应用的可扩展性 及可维护性。m v c 的思想符合企业开发所重视的两个因素:复用和可维护性。 2 1 1m v c 设计模式 m v c 模式是”m o d a l v i e w c o n t r o l l e r ”的缩写,即模型视窗控制器,是x e r o x p a r c 在2 0 世纪8 0 年代为编程语言s m f l l t a l k 8 0 发明的,是目前广泛流行的一种 软件设计模式【9 】。最近几年被推荐为s u n 公司j 2 e e 平台的设计模式,并且受到越 来越多的开发者的欢迎。m v c 按照输入、处理、输出的流程将应用分为视图层、 模型层、控制器,这三层各自处理自己的任务。 图2 1m v c 设计模式结构图 f i g 2 1m v cd e s i g np a t t e r n sf i g u r e 第2 章相关技术概述 其中,模型是从现实世界中抽取出来的对象模型,表示企业数据和业务规则, 是应用逻辑的反映。在m v c 三个组件中,模型负责较多的处理任务,它为多个视 图提供数据。视图负责为应用程序和用户之间提供接口,表现为用户看到的并且 可以与之进行相应交互操作的界面,它主要负责将应用效果呈现给用户及显示模 型的状态。控制器是负责视图与模型之间交互的组件,并且控制用户输入的响应 方式和流程,它主要负责把用户的请求分发到相应的模型以及将模型的改变及时 反应到视图上两方面的动作。m v c 将这些对象分离以降低耦合度、提高灵活性和 复用性。 2 1 2m v c 设计模式的特点 v w c 不同的层各司其职,处于同一个层上的组件具有相同的特征,概括起来, 有如下特点: ( 1 ) 模型和视图之间是一对多的关系。按照 v w c 的设计模式,一个模型对 应多个视图,可以大大提高模型层代码的可重用性,一旦模型发生改变,也易于 维护。 ( 2 ) 数据与逻辑分离,使得程序设计的过程更清晰,而且增强了系统的可扩 展性和可维护性,提高了组件的可复用度,也降低了测试的复杂度。 ( 3 ) 控制器提高了系统应用程序的灵活性和可配置性。为了完成用户的需求, 利用控制器来连接不同的模型和视图,可以提高应用程序的灵活性,也简化了它 的配置。 2 2w s h 框架介绍 w s h ( w e b w o r k + s p r i n g + h i b e m a t e ) 框架是目前最为流行j 2 e e 框架的一种, 具有高度的实用性和可扩展性。轻量级的w s h 集成框架与传统的j 2 e e 体系结构 大致相同。 w s h 框架主要包括表现层、业务逻辑层和持久化层三个层面。其中,w e b w o r k 负责请求转交,并把s p r i n g 的处理结果返回给用户,即表现层;s p r i n g 负责真正 的业务操作,即业务逻辑层:h i b e r n a t e 负责数据库的操作,即持久化层。 一,嘞w o r k 基于a j a x 技术及j 2 e e 架构的r i a 集成框架的研究与实现 w e b w o r k 是一个应用广泛的j 2 e ew e b 框架,它是由o p e n s y m p h o n y 组织开发 的,主要以组件化和代码重用为目标。w e b w o r k 目前最新的版本是2 2 2 ,目前正 在使用的w e b w o r k 2 x 前身是由r i c k a r do b e r g 开发的w e b w o r k ,但是现在的版本 中,w e b w o r k 已经被分隔成了x w o r k l 和w e b w o r k 2 两个项目。x w o r k 提供了很 多核心功能,如前端拦截机( i n t e r c e p t o r ) ,运行时表单属性验证,类型转换,o g n l ( o b j e c tg r a p h i cn a v i g a t i o nl a n g u a g e ,对象图导航语言) ,i o c ( i n v e r s i o no f c o n t r o l , 控制反转) 容器等。w e b w o r k 2 建立在x w o r k 之上,负责处理h t t p 请求和响应。 此外,w e b w o r k 2 支持多视图表示,视图部分可以用j s p 、v e l o c i t y 、f r e e m a r k e r 、 j a s p e r r e p o r t s 、x m l 等实现。 l 、,j we _ b l 、厂j n o n - w e b 图2 2w e b w o r k 结构图 f i g 2 2w e b w o r ks t r u c t u r e w e b w o r k 包括以下三个关键部分: ( 1 ) a c t i o n :a c t i o n 是一次请求的控制器,同时也充当数据模型的角色。一 般情况下,一个a c t i o n 代表一次请求或调用。在w e b w o r k 中,a c t i o n 类常常需要 实现a c t i o n 接口,或者直接继承基础类a c t i o n s u p p o r t 。这时,它要实现默认的 e x e c u t e 方法,并返回一个在配置文件中定义的r e s u l t ( 如s u c c e s s 、e r r o r 、 i n p u t 等自定义的字符串) 。 ( 2 ) r e s u l t s :它用来指示当前a c t i o n 执行之后的结果,根据跳转类型的不同, 可以是一个显示页面,也可以是另外一个a c t i o n 。t y p e 的值为“c h a i n 时,当r e s u l t 关联的是不同名称空间的a c t i o n 时,要显示地给出名称空间n a m e s p a c e 。如下: e s u l tn a m e = i n p u t ”t 弹e = c h a i n 一。一”一j 一”4 一鼍 第2 章相关技术概述 雾盱一 f m a c i a l : j ; ! r e l 、l o c a l = ”c o m :l o b h a n d l e r ”冬 ; ; ; ; c l a s s p a t h :c o m d l m u o f f i c e d o m a i n h b m ; “ 让i _ 譬? ! 登鼍一。,。一一。,幺 锄,m ,f ,? | p f “* * i * 一 ,7 ,“一v t7 f i 十p t 。、p 一,d ,# io ;。m ? 。 。,i ,蒯# 第2 章相关技术概述 爹r 一”鼍洳砖毋n a m e = ”h i b e m a t e p r o p e r t i e s ”一7 一4 一一节弹一”1 警 i i ;i $ h i b e m a t e d i a l e c t : j & 自;“俐,k j 批舭,i ? “* t 慨舻t 编惭。弧赢t 珏_ 僦h 幽缘批。? 越“妇 乱犯办f # 舭以讹“积 。叫m 每? 2 3a j a x 技术介绍 荔 。把。i 。貔 2 3 1a j a x 简介 2 0 0 5 年2 月,a d a p t i v ep a t h 公司的j e s s ej a m e sg a r r e t t 在他的“h j a x :an e w a p p r o a c ht ow 曲a p p l i c a t i o n s ,【16 】一文中首次提出了a j a x 的概念。a j a x 是一种客户 端技术,它的一个优点就是使用异步模式打破了使用页面重载的惯例,用户的动 作总是与服务器同步。严格的说,它并不是一种新的技术,而是将多种传统技术 综合成为一个功能强大的技术,可以让开发人员构建更加丰富、更加动态的、基 于j a v a 技术的w 曲应用。a j a x 包括【17 】: ( 1 ) 基于w e b 标准x h t m l ( e x t e n s i b l eh y p e r t e x tm a r k u pl a n g u a g e ,可扩 展超文本置标语言) 和c s s ( c a s c a d i n gs t y l es h e e t ,级联样式表)的表示,实 现界面的标准化呈现; 基于a j a x 技术及j 2 e e 架构的r i a 集成框架的研究与实现 ( 2 ) 使用d o m ( d o c u m e n to b j e c tm o d e l ,文档对象模型) 能够以一种结构 化的方式来动态操作h t m l 文档,从而实现动态的显示和交互; ( 3 ) 使用x m l ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标识语言) 和x s l t ( e x t e n s i b l es t y l e s h e e tl a n g u a g et r a n s f o r m a t i o n s ,可扩展样式表语言转换) 进行 数据的表示、交互和处理; ( 4 ) x m l h t t p r e q u e s t 对象是a j a x 的核心,通过它实现与服务器的异步通信; ( 5 ) 使用j a v a s c r i p t 将这些各具特点的技术绑定在一起,并处理交互数据。 客 户 端 服 务 器 商一 图2 4a j a x 组成技术关系图 f i g 2 4r e l a t i o n s h i po f t e c h n o l o g yi na j a x 总结起来,a j a x 应用程序的优势在于: ( 1 ) 通过异步模式,使得w e b 应用程序更为迅捷地回应用户动作,提升了用 户体验。 ( 2 ) 优化了浏览器和服务器之间的传输,减少不必要的数据交互,占用了极 少的带宽。 ( 3 ) a j a x 引擎在客户端运行,承担了一部分本来由服务器端负责的工作, 从而减少了大用户量下的服务器负担。 ( 4 ) a j a x 是基于标准化并被广泛支持的技术,并且不需要插件和下载小程序。 2 3 2a j a x 基本特点 概括起来,a j a x 应用具有以下几个特点【1 8 】: ( 1 ) 浏览器中展示的是应用而不是内容; 在传统的基于页面的w e b 应用中,浏览器只是一个哑终端( d u m bt e r m i n a l ) , 第2 章相关技术概述 用于显示文档。a j a x 则不同,它将一部分应用逻辑从服务器端移植到浏览器端, 服务器每次交付给浏览器的是包含大量j a v a s c r i p t 代码的复杂文档。 ( 2 ) 服务器交付的是数据而不是内容; 在a j a x 应用中,响应用户请求的不再是整个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论