(计算机应用技术专业论文)ajax技术在教学网站中的应用研究.pdf_第1页
(计算机应用技术专业论文)ajax技术在教学网站中的应用研究.pdf_第2页
(计算机应用技术专业论文)ajax技术在教学网站中的应用研究.pdf_第3页
(计算机应用技术专业论文)ajax技术在教学网站中的应用研究.pdf_第4页
(计算机应用技术专业论文)ajax技术在教学网站中的应用研究.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机应用技术专业论文)ajax技术在教学网站中的应用研究.pdf.pdf 免费下载

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

文档简介

摘要 教学网站是为了辅助教学活动而建立的一个教学平台,它构建于传统的w e b 应用基础之上。a j a x 作为w e b 技术发展到一定程度的产物,能够比较好的帮助 原有教学网站系统提升功能和性能。 a j a x 技术是一系列技术的合集,虽然其中包含的一些技术并不是最新的,但 是,它是以全新的应用思路对技术进行组合与发挥,这给原有技术带来了新的生 机。自从c , o o g l c 的g m a i l 推出让世人眼前一亮以来。不断的有新的站点应用投入 到a j a x 的怀抱。 首先本文从w e b 技术发展的起源谈起,分析a j a x 能够为传统的w e b 应用带 来些什么,它的优势在什么地方。然后解释a j a x 的基本组成技术和核心原理, 展示了最小的a j a x 框架应该拥有的组成部分和a j a x 数据交互的基础方法通 过比较a j a x 的流行框架,作者选择d o j o 框架作为实现本文应用的主要框架。 接着在了解a j a x 特性之后提出了应用于a j a x 的几种常用的、重要的设计 模式在随后的应用实现举例中讲解了如何应用这些设计模式解决教学系统的实 际问题,并且阐述了各种应用模式的前提条件和可以迁移发挥的方面。a j a x 在教 学系统中的应用实例是全文的重点 最后讨论了a j a x 应用需要照顾到的性能和安全问题。 在教学系统中,a j a x 应用实现的效果表明它确实能够使教学网站的操作更加 流畅,使用户获得一个更好的体验,使系统性能更加优异。 关键字:a j a x ;教学网站;应用研究;设计模式 分类号:t i ,3 l l文献标识码:a 2 a b s t r a c t t e a c h i n gw e b s i t ei sap l a t f o r ma sa s s i s t a n to ft e a c h i n ga c t i v i t y i ti sb a s e do n w a d i t i o n a lw e ba p p l i c a t i o n a sap r o d u c to fw e bd e v e l o p m e n t , a j a xw i l li m p r o v et h e o r i g i n a ls y s t e mo nu s e re x p e r i e n c ea n dp e r f o n n 衄c e a j a xi sac o m b i n a t i o no fab i r d i eo ft e c h n o l o g i 骂翻w n eo fw h i c h 锄n o tt h e n e w e s t , h o w j 舒c e r , t h ed e wm e t h o d so f u s i n gt h e s et e c h n o l o g i e sb r i n gt h e mn e wv i t a l i t i e s a f t e rc _ o o g l es h o w nt h ew o r l dt h ek i l l e ra p p f i c a t i o n , g n m i l , m o r ea n dm o r en e ww e b a p p l i c a t i o n s8 1 eu s i n ga j a x f i r s t l y , i nt h i st h e s i sw e s t a r tf r o mt h eo g i n a d o no f w e b t e c h n o l o g y , a 血a l y z ew h a t a j a xc o u l db r i n gf o rt r a d i t i o n a lw e ba p p l i c a t i o na n dt h em a g i cp o w e ri th a s t h e nw e e x p l a i nt h em o s ti m p o r t a n tc o m p o n e n t sa n dt h eo o 幅p r i n c i p l e so f a j a x , i l l u s l r a t eb a s i c a j a xf r a m e w o r ka n db a s i so f a j a xd a t ao o n u n u n i c a t i o n c o m p a r i n gt h em o s tp 叩【i l l 缸 a j a xf r a m e w o r k , 响oi su s e dt oi m p t e m e n ta l lt h ee x a m p l e sm e 瓶o n e di nt h et h e s i s s e c o n d l y , w eg i v es e v e r a lm o s tu s e f u la n di m p o r t a n td e s i g np a t t e r n so f a j a x i n a p p l i m i o ne x a m p l e sw ee x p l a i nh o wt o 哦t h e s ep a t t e r a st os o l v ep r a c t i c a lp r o b l e m s o f t e a c h i n gs y s t e m f u r t h e rm o 他t h er e l a t i v ea p p l i c a t i o n so f t h o s ep a t t e r n sw i t ha j a x a r c , f i s c u s s e d t h i s c d i st h ek e yl m i n to f t h ew h o l et h e s i s f i n a l l y , a j a xp e r f o r m a n c ea n ds e c u r i t yi s s u e s , w h i c hm a t t e rm u c hi nt e a c h i n g s y s t e m , a l ea r g u e d p r a c t i c a lt e a c h i n gp r o c e s si n f o r m e da j a xa p p l i c a t i o ni nt e a c h n gw e b s i t e o u t p e r f o r m si n i t i a ls y s t e l n a s p e c t so f u s e ra 【p c d 锄a n dp e r f o r m 衄c e k e yw o r d s :a j a x ;t e a c h i n gw e bs i t e ;a p p l i c a t i o ns t u d y ;, d e s i g np a t t e r n c l a s s n o :t p 31 1 学位论文版权使用授权书 本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特 授权北京交通大学可以将学位论文的全部或部分内容编入有关数据库进行检索, 并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国 家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 导师签名: 蝴飙研年p 月7 日够扣 乙 月 肛 孙 年 签 1 箍 硼 作 : 文, 期 论 日 位 字 学 签 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研 究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或 撰写过的研究成果,也不包含为获得北京交通大学或其他教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作 了明确的说明并表示了谢意 学位论文作者签名:,乙侈签字日期:2 ,。 年f 垆l7 日 致谢 一转眼到了毕业的时间,在这两年多研究生的时间里,我收获很多。这些收 获和一直关心我,帮助我的人是分不开的,是他们陪伴我渡过了这段美好难忘的 时光。这段岁月必是我人生道路中最宝贵的回忆之一。 这篇论文是在导师王移芝教授悉心指导下完成的。论文从定制提纲到系统的 实现与分析,无不饱含着导师的殷殷心血和谆谆教导。 王教授作风严谨、精益求精、敬业忘我,这些无不给我留下了极为深刻的印 象,并将使我在今后的发展中受益匪浅 谨向恩师致以最诚挚的感激和最由衷的敬意! 在此也特别感谢实验室的师兄弟姐妹们给予的各种支持与帮助,他们和我一 起渡过了研究生的这段时光,是他们让我感受到了这个世界的朝气蓬勃,充满希 望以及求实园的求是精神。在他们的身上我学到了很多,在相互交流中,我们都 有了很大的进步。借此机会祝愿全体老师和同学在事业和学习上取得更大的进 步 最后,将深深感谢对我寄予厚望的父母亲人,是他们的无私的支持和关怀给 了我前进的动力! 1 1 引言 1 研究背景和发展现状 c s 架构应用程序,是在二十世纪九十年代出现的,它采用图形用户界面,客 户端的数据处理能力比较强,具有强大的数据操作和事物处理能力。但是,随着 应用程序的复杂程度不断提高,该架构逐渐出现了部署成本高、客户端应用程序 更新困难等问题。 由于该架构的种种弊端,九十年代中期,互联网飞速发展,出现了b s 结构 浏览器服务器应用程序,测览器的广泛使用解决了应用程序部署和更新的困难。 但是,应用程序受制于测览器的限制,无法像c $ 结构那样使用丰富的效果来展 示数据,用户体验相对平凡随着应用程序复杂性越来越高,传统的应用程序已 经渐渐不能满足浏览者更高的、全方位的体验要求了,这个问题被m a c r o m e d i a 公 司称之为。体验问题”( e x p e t i e n c 宅m a t t e r ) 。此时一种被称为“富互联网程序”( r i c h c t a p p l i c a t i o n ) 简称r i a 网络应用程序出现了 r i a 实际上也是一种基于b $ 的架构但是又有一些c s 架构的特征。它可以 让用户拥有更高的交互性和更佳的用户体验。用户不需要安装任何客户端软件, 使用浏览器或者安装极少量的插件就能够完成所需要的工作 a j a x 是w e b 2 0 的核心之一。a j a x 是a s y l l g h t o n o u sj a v a s e r i p ta a dx m l 的 缩写。它并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在 一起,在共同的协作中发挥各自的作用,它主要包括以下五个方面: ( 1 ) 使用x m l h t t p r e c l u e s t 对象进行异步数据读取; ( 2 ) 使用x h t m l 和c s s 标准化呈现; ( 3 ) 使用h t m ld o m 实现动态显示和交互; ( 4 ) 使用x m l 和x s l t 进行数据交换与处理; ( 5 ) 使用j a v a s c r i p t 绑定和处理所有数据。 a j a x 相当于在用户和服务器之间加了一个中问层,使用户操作与服务器响应 异步化。通过把以前的一些服务器负担的工作转嫁到客户端,充分利于客户端闲 置的处理能力完成一些工作,减轻服务器和带宽的负担,从而达到节约服务器处 理器资源及带宽租用成本的目的。 在教学网站中,我们采用j s p 技术,构建在s t r u t s 框架之上,使用h i b e r n a t e 和数据库连接池技术、遵循w e b 开发标准,这些技术的合理应用使得它能够同时 满足多门课程教学过程的需要。 教学网站的目标是构建一个能够有效帮助老师们管理教学实践活动,支持完 成教学任务的通用平台。在该平台上学生能够很好的与老师进行交流,提出疑问, 查看教学资源,完成作业;老师能够把自己的教学经验、教学资源传播共享出去, 并且能够跟踪学生的学习情况,对学生的作业,讨论,答疑等有一个统一的了解。 尽管使用j s p 技术就完全能够构建一个好的教学平台,但是使用a j a x 能够 使得教学平台的用户交互体验得到更进一步的提高,能够使得用户的操作更加的 流畅。本文的主旨就是介绍a j a x 的起因、发展、以及在教学平台中的实践研究, 最终目标是通过a j a x 技术的应用使得教学平台更加优异 1 2w e b 技术的发展 从上个世纪9 0 年代起i n t e m e t 经历过翻天覆地的重大变革。从最早的使用基 于文本的简单浏览器进行信息发布,到如今,i n t e r i l e t 已经成为贸易和信息的中心, 并成为大量应用的首选平台。w e b 应用的技术也随之发生了很大的变化。从技术 层面看,w e b 架构的精华有四处:用超文本技术( n m l ) 实现信息与信息的连接; 用统一资源定位技术( u 砒) 实现全球信息的精确定位;用新的应用层协议( h r r p ) 实现分布式的信息共享;用x i v i l 实现无差别的跨平台、跨应用的数据传输。这四 个特点无一不与信息的分发、获取和利用有关。其实,t i mb e r n e r s - l e e 早就明确 无误地指出:。w e b 是一个抽象的( 假想的) 信息空间”,作为i n t e r n e t 上的一种应 用架构,w e b 的首要任务就是向人们提供信息和信息服务。 最初,所有w e b 页面都是静态的;用户请求一个资源,服务再返回这个资源。 在浏览器发展的最初阶段,w e b 页面的这种静态性是可以满足用户的需求的;但 是随着w e b 应用的不断扩大,个人计算机的普及和w i n d o w s 操作平台的问世,用 户希望能得到更动态的网上体验。评价一种w e b 开发技术优劣的标准只有一个, 那就是看这种技术能否在最恰当的时间和地点,以最恰当的方式,为最需要信息 2 的人们提供最恰当的信息服务。 w e b 是一种典型的分布式应用架构。w e b 应用中的每一次信息交换都要涉及 到客户端和服务器端两个层面。因此w e b 开发技术大体上也可以被分为客户端 技术和服务器端技术两大类。 1 2 1 服务器端技术的发展 与客户端技术从静态向动态的演进过程类似,w e b 服务器端的开发技术也是 由静态向动态逐渐发展、完善起来的 最早的w e b 服务器简单地响应浏览器发来的h t i p 请求,并将存储在服务器 上的h t m l 文件返回给浏览器一种名为s s i ( s e r v e rs i d ei n c l u d e s ) 的技术可以 让w e b 服务器在返回h t m l 文件前,更新h t m l 文件的某些内容,但其功能非 常有限。第一种真正使服务器能根据运行时的具体情况,动态生成h t m l 页面的 技术是大名鼎鼎的c g i ( c o m m o ng a t e w a yi n t e r f a c e ) 技术。1 9 9 3 年,c g i1 0 的 标准草案由n c s a ( n a t i o n a lc e n t e rf o rs u p e r c o m p u t i n ga p p l i c a t i o n s ) 提出,1 9 9 5 年,n c s a 开始制定c g i1 1 标准,1 9 9 7 年,c g l l 2 也被纳入了议事日程。c g i 技术允许服务器端的应用程序根据客户端的请求,动态生成h t m l 页面,这使客 户端和服务器端的动态信息交换成为了可能。随着c g i 技术的普及,聊天室、论 坛、电子商务、信息查询、全文检索等各式各样的w e b 应用蓬勃兴起,人们终于 可以享受到信息检索、信息交换、信息处理等更为便捷的信息服务。 1 9 9 4 年,r a s l n u sl e n i o r f 发明了专用于w e b 服务器端编程的p h p ( p e r s o n a l h o m ep a g e t o o l s ) 语言。与以往的c g i 程序不同,p h p 语言将h t m l 代码和p h p 指令合成为完整的服务端动态页面,w e b 应用的开发者可以用一种更加简便、快 捷的方式实现动态w e b 功能。时至今日,p 肿依然是最流行的w e b 开发语言之一。 1 9 9 6 年,m i c r o s o f t 借鉴p h p 的思想,在其w e b 服务器i i s3 0 中引入了a s p 技术。a s p 使用的脚本语言是熟悉的v b s c r i p t 和j a v a s e r i p t 。借助m i c r o s o f 【v i s u a l s t u d i o 等开发工具在市场上的成功,a s p 迅速成为了w m d o w s 系统下w e b 服务器 端的主流开发技术。 1 9 9 7 年,s e r v l e t 技术问世。1 9 9 8 年,j s p 技术诞生s e r v l e t 和j s p 的组合( 还 可以加上j a v ab e a n 技术) 让j a v a 开发者同时拥有了类似c g i 程序的业务处理功 能和类似p h p 的h t m l 嵌入功能,此外,j v m 技术的发展与优化也大大提高了 s e r v l e t 和j s p 的执行效率一这也正是s e r v l e t 和j s p 被后来的j 2 e e 平台吸纳为 核心技术的原因之一 j 2 e e 是纯粹基于j a v a 的解决方案1 9 9 8 年,s t m 发布了啪1 0 标准。e j b 为企业级应用中必不可少的数据封装、事务处理、交易控制等功能提供了良好的 技术基础。至此,j 2 e e 平台的三大核心技术s e r v l e t 、j s p 和e b 都已先后问世。 2 0 0 2 年,m i c r o s o f t 正式发布n e tf r a m e w o r k 和v l s u a ls t u d i o n e t 开发环境。 早在n e t 发布之前,就已经有许多w m d o w s 平台的w e b 开发者迫不及待地利用 b e t a 版本开发w e b 应用了因为n e t 平台及相关的开发环境不但为w e b 服务端 应用提供了一个支持多种语言的、通用的运行平台,而且还引入了a s p n e t 这样 一种全新的w e b 开发技术a s p n e t 超越了a s p 的局限,可以使用v b n e t 、c 撑 等编译型语言。支持w e bf o r m 、n e ts e f v e l c o n t r o l 、a d o n e t 等高级特性客 观地讲,n e t 平台,尤其是n e t 平台中的a s e n e t 的确不失为w e b 开发技术在 g r m d o w s 平台上的一个集大成者。 1 2 2 客户端技术的发展 w e b 客户端的主要任务是展现信息内容,而h t m l 语言则是信息展现的最有 效载体之一。作为一种实用的超文本语言,h t i v l l 的历史最早可以追溯到上世纪 四十年代 ( 1 ) h t m l 的出现。 1 9 4 5 年,v m m e v a rb u s h 在一篇文章中阐述了文本和文本之问通过超级链接相 互关联的思想,并在文中给出了一种能实现信息关联的设计方案。 1 9 6 0 年前后,d o u ge n g e l b a r t 等人则,对信息关联技术做了最早的实验。与此 同时,t e dn e l s o n 正式将这种信息关联技术命名为超文本( h y p e r t e x t ) 技术。 1 9 6 9 年,m m 的c h a r l e sg o i d f a r b 发明了可用于描述超文本信息的g m l ( g e n e r a l i z e dm a r k u pl a n g u a g e ) 语言。 1 9 7 8 到1 9 8 6 年间,在a n s i 等组织的努力下,g m l 语言进一步发展成为著 名的s g m l 语言标准。 1 9 8 9 年,当t t mb e r n e r s - l e e ( w e b 应用创始人) 和他的同事们试图创建一个 4 基于超文本的分布式应用系统时,t u nb e r n e r 9 - l e e 意识到,s g m l 是描述超文本 信息的一个上佳方案,但美中不足的是,s g m l 过于复杂,不利于信息的传递和 解析于是, f u nb e x , n e r s - l e e 对s g m l 语言做了大刀阀斧的简化和完善。 1 9 9 0 年,第一个图形化的w e b 浏览器“w o r l d 晰d e w e b ”终于可以使用一种 为w e b 度身定制的语言- - h t m l 来展现超文本信息了。 ( 2 ) n c t s c a p e 浏览器1 0 发布以及后期的浏览器大战。 1 9 9 4 年,m a r ca n d r e e s s e n 新发布的n e t s c a l 浏览器大受当时上网一族的欢迎, 因为n c b ) c a p e1 0 浏览器创造了一个记录,它比上一代的m o s a i c 浏览速度足足快 了十倍,还独创性地使用密钥算法保证网上数据的安全,于是乎,n e t s c a p e 浏览器 立刻占领了高达7 0 的市场,人人几乎都是用它上网而微软适时地抓住了这一 波的互联网热潮,成功地取得了m o s a i c 软件的许可,可以研发基于m o s a i c 的各种 不同的浏览器,至此,n e t s c a p e 与微软之阃长达数年之久的浏览器大战开始了 无疑,这场大战,有力的推动了w e b 客户端技术的发展 ( 3 ) 测览器对j a v a j a v a s c r i p t 的支持。 1 9 9 6 年,n e t s c a p e 浏览器在其2 0 版中增加了对j a v aa p p l e t s 和j a v as 嘶p t 的支持。n e t s c a p e 的冤家对头,m i c r o s o f t 的i e3 0 也在这一年开始支持j a v a 技术。 现在,喜欢动画、喜欢交互操作、喜欢客户端应用的开发人员可以用j a v a 或 j a v a s c r i p t 语言随心所欲地丰富h t m l 页面的功能了 ( 4 ) c s s 及d h t m l 的诞生。 真正让h t m l 页面又酷又炫、动感无限的是c s s ( c a s c a d i n gs t y l es h e e t s ) 和 d h t m l ( d y n a m i ch t m l ) 技术。 1 9 9 7 年的n c t s c a p e4 0 不但支持c s s ,而且增加了许多n d m c a p e 公司自定义 的动态h t m l 标记,这些标记在c s s 的基础上,让h t m l 页面中的各种要素“动” 了起来。m i c r o s o f t 发布了4 0 ,并将动态h t m l 标记、c s s 和动态对象模型 ( d h t m l o b j e c tm o d e l ) 发展成了一套完整、实用、高效的客户端开发技术体系, m i c r o s o f t 称其为d h t m l 同样是实现h t m l 页面的动态效果,d h t m l 技术无 需启动j a v a 虚拟机或其他脚本环境,可以在浏览器的支持下,获得更好的展现效 果和更高的执行效率。时至今日d h t m l 和c s s 技术基本上是客户端编程不可或 缺的一部分了。 5 ( 5 ) f i a s h 开始普及。 1 9 9 0 年初期,j o n a t h a ng a y 在f u t u r e w a v e 公司开发了一种名为f u t u r es p l a s h a n i m a t o r 的二维矢量动画展示工具,1 9 9 6 年,m a c r o m e d i a 公司收购了f u t u r e w a v e , 并将j o n a t h a ng a y 的发明改名为f l a s h 。从此,f l a s h 动画成了w e b 开发者表现自 我、展示个性的最佳方式。 ( 6 ) w e b 2 0 与a j a x 的风暴。 2 0 0 3 年之后,w e b 2 0 成为了互联网的热门概念。一般来说w e b 2 0 是相对 w e b l 0 的新的一类互联网应用的统称。w e b l 0 的主要特点在于用户通过浏览器获 取信息,w e b 2 0 则更注重用户的交互作用,用户既是网站内容的消费者( 浏览者) , 也是网站内容的制造者。它不是一种单纯的技术,可以说是众多技术概念的集合 体,是一种内容组织传播方式,更多的体现出来的是一种表现形式。基于上述理 论,目前应用包括:博客( b l o g ) 、即时通讯( “) 、社会网络( s n s ) 、站点摘要 ( r s s ) 、百科全书( w ( i ) 、对等联网( p 2 p ) 等。a j a x 是w e b 2 0 的核心,a j a x 是已经存在了若干年的技术,却在这两年成为最新时尚。它的兴起不仅仅是由于 c , o o g l e 等公司的大力引导,更是因为它能够带来更好的用户体验,改变了人们对 传统w e b 应用的不佳印象 r i a 与a j a x 不同,它采用了不同的思路,它并不基于原有的h t m l 系统, 而是另辟蹊径为用户提供更好的操作界面而努力 1 3 1r i a 基本特点 r i a 是黜c h i n t e m e t a p p l i c a t i o n ( 富互联网应用系统) 的简称。早在a j a x 广 泛推广之前,人们就试图建立一个用户接口,它比用h t m l 能实现的接口更加健 壮、反应更加灵敏和更具有令人感兴趣的可视化特性。允许在因特网上以一种像 使用w e b 一样简单的方式来部署富客户端程序。无论将来r i a 是否能够如何程度 的代替h t m l 应用系统,对于那些采用胖客户端技术运行复杂应用系统的机构来 说,r i a 确实提供了一种廉价的选择 6 r i a 可扩展性更大,人性化更多,视觉和互动上更好,但缺点是访问速度慢, 下载文件大。并且有很多不同的厂商和联盟在以不同的思路实现r i a 技术【1 】。 ( 1 ) x u l :x u l ( 念作。z o o l 。) 是一个基于x m l 的用户界面语言,它来自于 m o z i l l a 的开放源码项目。它可用于建立窗体应用程序,这些应用程序不但可以在 m o z i l l a 浏览器上运行,而且也可以运行在其他描述引擎上。 ( 2 ) m a c r o m c d i af l a s h 和f l e x :f l a s h 是一个已经成熟的商业产品,它可以在 w e b 网页中引入交互式的图形界面最近经过升级后,新版本包含了建立窗体风 格的应用程序的功能。尽管f l a s h 作为一个在w e b 上最广泛部署的前端技术还有 争议( 取决于所选用的f l a s hp l a y e r 版本) ,但据称已经有9 4 以上的桌面系统都 支持f a l s h 。由于用来创建动画式图形的f l a s h 工具其功能十分强大并且是可视化 的( 与之相反其它技术要求进行低级的图形编码) ,所以图形设计人员使用起来十 分得心应手f l e x 产品对f l a s h 增加了一个x m l 描述语言,使得可以编译用户界 面,并且能够用f l a s hp l a y 苜来随时进行描述f l e x 使得传统的开发机构能更好地 了解和使用f l a s h 。 ( 3 ) o r a c l e f o r m s :o r a c l e f m m s 是用来构建以数据库为中心的互联网应用系统 的一个成熟的商品化产品通过o r a c l e f o r m s ,可以使用一个输出窗体模块文件的 可视化设计器创建窗体。为了便于在该设计工具外部进一步进行处理,模块文件 要么采用私有的f m t 格式,要么采用x m l 格式它可以与o r a c l e 数据库和o r a c l e 平台的其他部分( 如s i n g l es i g n - o n ( 单一登录) 和e n t e r p r i s em a n a g e r ( 企业管理 器) ) 紧密集成,对国际化的广泛支持,以及创建以数据为中心应用程序的极高效 率。 ( 4 ) f l a i r :s u n 公司正在组织研发一项用于替代a j a x 的技术f l a i r 。它是一个 处于开发阶段的开放源代码项目,晚些时候,s u n 公司将开始向开发社区释放真正 可用的评估版本。从远景来说,f l a i r 是s u n 公司在w e b 开发领域的一次重要的尝 试,这是一个实验性的但是又颇具野心的技术研发项目作为s u n 的首席研究员, d a ni n g a l i s 曾谈到了f l a i r 的一些本质特征,称f l a i r 是一个完全独立的w e b 编程 内核,纯粹是基于j a v a s c r i p t 的,这是一种在本质上与a j a x 截然不同的技术。 可以说。r i a 在很大程度上体现了下一代互联网应用的特征,所以理所当然 地成为影响到w e b 市场份额的重要制高点w e b 应用已经带给了传统应用极大的 7 压力,在这个几近于改朝换代的关头,相信没有哪个厂商会放弃这个具有深远意 义的发展机会。 1 3 2a j a x 与r i a 的比较 a j a x 构建速度快,以标准规范为基础( x m l h t t p r e q u e s t 并不在w 3 c 组织的 w e b 标准中,但是它已经无可争议的成为一个事实标准) ,在不同的浏览器间受到 了广泛的支持它提供与服务器异步通信的能力,从而使用户从请求响应的循环 中解脱出来 在j 2 e e 中,开发人员过于关注服务和持久性层的开发,以至于用户界面的可 用性已经落后。在一个典型的j 2 e e 开发周期中,常常会昕到这样的话,。没有可 投入u i 的时问”或“不能用h t m l 实现”。但是,很多a j a x w e b 站点证明,这 些理由再也站不住脚了,这些w e b 站点都表明,w e b 应用程序不必完全依赖于从 服务器重新载入页面来向用户呈现更改简而言之,在涉及到用户界面的响应灵 敏度时,w e b 应用的基准设得更高了 a j a x 比起其它r i a 技术的主要优点是无缝与h t m l 集成,因此它可以大量 使用而不需要改变现有w e b 内容。可以把它想象成w e b 站点的调料这样做的风 险非常小。a j a x 还是后台无关且不需要任何插件。 综上所述,r i a 和a j a x 采用了不同的技术路线来解决基于w e b 的应用程序 的用户体验问题,各有特点,都在自己专有的领域内发挥着重要、巨大的作用。 如果为了能够实现遵循w e b 标准并且以最小化成本利用现有w e b 站点资源,那么 a j a x 是更好的选择。 1 4 教学网站与a j a x 1 4 1 教学网站简介 本文所指的教学网站是一个通用的计算机辅助教学平台,可以在 h t t p :2 0 2 1 1 2 1 5 4 6 5 t s 予以访问。该教学平台满足了多门课程的网上教学的需求。 它是用于在网上实现教学活动的一个教学软件,既可以用来辅助在校课堂教学、 也可以用来实现远程教学。主要功能包括:一是发布课程信息,如教学通知、授 课教案、教学日历等;二是交互课堂,如讨论区和答疑区,讨论区用来实现同学 问的多对多的交互、答疑区用来实现师生之间的一对多的交互;三是作业管理, 如发布作业、提交与批改作业等:四是学生信息管理,如学生名单的导入导出、 学生成绩的导出等;五是问卷调查、课程评定;六是其它功能,如系统初始化、 教学过程信息导入导出、密码修改等功能。t 教学平台本身采用了j s p 技术,架构在s t r u t s 框架之上,使用r e s i n3 1 1 2 作 为w e b 容器,m y s q l 作为数据库,数据库访问采用了h i b e r n a t e 作为o rm a p p i n g 框架。在连接池方面采用了h i 胁t e 官方推荐的c 3 p 0 的连接池,从实际使用来 看,该连接池运行比较稳定,能够满足比较大量的并发访问 i a 2 教学网站对a j a x 的需求 教学网站是建立在传统的w e b 应用基础上的程序,它在功能上来说是对教学 实践活动的一次总结和提炼,从效果上来说确实大大帮助了教学活动更好的推广, 使得教学的手段得到了丰富。a j a x 的出现为教学网站的优化提供了的途径。 第一、在传统的基于页面的w e b 应用中,浏览器扮演着哑终端的角色。它对 用户处于操作流程哪一阶段一无所知。这些信息全部都保存在服务器上,确切地 说,就是在用户会话上。教学网站在这个方面并没有什么特殊的地方,它把所有 的数据都保存及在了服务器端,这样每次进行用户交互的时候,都会处理并传送 回一个完整的页面。其交互情况可以参看图1o l ,在用户登陆了服务器之后,用户 在会话中看到的是一系列的页面,每次页面切换都不可避免地要到服务器上走一 个来回。而每次服务器返回的页面中,很有可能大部分内容都和上一页面的内容 是完全一致的,只有一个部分是被更新的。例如,教学平台后台管理的学生列表 是一个非常大的列表,很有可能含有全校几千上万名学生的基本信息。这个时候 如果发现一个学生的信息不再需要,希望删除该学生信息。采用传统的方法是给 浏览器发送一个请求,删除指定学生信息,不管学生信息是否成功删除,服务器 都必须重新构建整个学生信息列表返回给用户从这个例子可以看出在传统的应 用中即便是一个非常简单的任务执行都有可能需要在服务器和客户端传输大量的 数据。这些数据的传递对于局域网用户而言增大了服务器的压力,使用了稍微多 9 一些的服务器资源,并不会感到明显的系统反映度下降但是在广域网传输过程 中,用户就会明显感到系统反映迟钝。 图1 1 传统w 曲应用的生命周期 f i g u r e1 1t i ec y c l eo fi r a n d 酬w e ba p p l j u t e o m 在基于a j a x 的系统交互过程中,可以向服务器发起一个异步请求来完成这 件事。模板文件、导航列表和页面布局上的其它部分已经随着初始页面发送给了 浏览器,服务器无需重发,以后每次只需要发送相关的数据就可以了。a j a x 应用 可以通过多种方式来做这件事情。例如,返回一段j a v a s c r i p t 代码、一段纯文本或 者小段x m l 文档。这些方式各自的优缺点,但无论采用哪一种都远比传统w e b 应用方式的数据传递来得高效。 在a j a x 应用中,网络的通信流量主要是集中在加载的前期,无论如何,用 户登录后都需要一次性地将一个大而复杂的客户端交付给浏览器。但是在此之后, 与服务器的通信则会有效率得多。对于瞬态应用来说,积累起来的通信流量要比 以前的基于页面的w e b 应用少很多。与此同时,平均的交互次数则有所增加。整 体而言,a j a x 应用的带宽消耗要比传统的w e b 应用低一些。 i o 田1 2 典型a j a x 应用生命周角 f i g u r e l 2l j 怕q i c i e o f a t y p j d a j a x 雒l p i k a t i o n 第二、a j a x 技术的背后有两个推动力:w e b 标准的成熟【3 】、软件可用性和 交互设计理论的成熟。在软件的可用性方面,除了一些通用的可用性和交互设计 理论之外( 这方面的经典著作包括( a b o u t f a c e 2 o 中文版、面向使用的软件设 计等) ,w e b 应用的可用性( w e bu 蚰b i i i t y ) 也是国外非常热门的一个研究领域, 主要侧重于研究如何提高w e b 网站的可用性。美国在这个领域有着非常深入的研 究,并且对于一些公共机构网站的可用性还有相关的法律条款来约束( s e c t i o n 5 0 8 , 5 0 8 条款,于2 0 0 1 年6 月2 1 日成为美国的法律,直接影响了联邦部门和一些代理 机构和为他们服务的网页设计师) 。对于这些网站,如果无法达到条款上的一些可 用性要求,网站经营者就违法了。如果是开发公司无法达到这些要求,就别指望 从联邦政府手中拿到这些项目。 为了对如何提高w e b 应用的可用性做出指导,w 3 c 在2 0 世纪9 0 年代建立了 w e b a c c e s s i b i l i t y i n i t i a t i v e ( w a d ,致力于为网站建造者提供实现可访问性( 与可 用性同义) 的方法和策略( h t t p :w w w w 3 o r g w a f g i _ o 。 可以认为a j a x 就是w e b 标准和w e b 应用的可用性理论的集大成者。它极大 地改善了w e b 应用的可用性和用户的交互体验,最终得到了用户和市场的广泛认 可。所以可以说,a j a x 就是用户和市场的选择。 目前a j a x 已经成为了w e b 应用的主流开发技术,大量的业界巨头已经采纳 并且在大力推动这个技术的发展 ( 1 ) 1 m m 、o t a c i c 、y a h o o ! 、b e a 、r e d h a t 、n o v c l l 等业界领先的公司启动了 o p e n a j a x 项目。致力于为a j a x 开发建造先进强大的开发环境 m m 的o p e na j a x 项目的a j a xt o o l k i tf r a m e w o r k ( a t f h t t p :w w w e c l i p s e o r g a t f ) ,是一个基于e c l i p s ei d e 的a j a x 开发工具。它提供 了一个可以扩展的框架对不同的a j a x 框架加以支持( d o j o 、z i m b r a 、r i c o 等) 。 在该框架支持下拥有扩展的j a v a s c r i p t 编辑特性,如:编辑期语法检查;内置的 m o z i l l a w e b 浏览器;内置d o r a 查看器;内置j a v a , s c r i p t 调试器等。 ( 2 ) m i c r o s o f t 开发了自己的a j a x 框架a s p n e ta j a x ( 该框架早期被称为 a l i a s ,h t t p :w w w a s p n e q a j a x ) ,现在它已经成为了a s p n e t 不可或缺的部分, m i e r o s o t ! t 把a j a x 的复杂性封装的非常好,在跨浏览器方面做了很多实际而有效 的工作。 ( 3 ) s t m 虽然行动稍缓,但是也将a j a x 技术列入了j 2 e e 的b l u e p r i n t 中,作 为j 2 e e 技术的有益的补充 虽然r i a 的发展还在一个不断出现新技术的时期,但m a x 已经是当前最为 稳定和成熟的高有效性的w e b 表现方案在教学平台中适当的引入和应用a j a x 技术必将导致教学平台的性能和表现更加优异。 1 5 课题研究的主要内容和论文的结构 本文将研究如何利用a j a x 技术解决一些实际问题,以及如何使d o m 、x m l 和l a v a s c r i p t 协同工作达到既定的目标,重点是结合a j a x 和j 2 e e 技术在教学系 统中的实践。教学系统是各个学校教学工作中比较重要的部分,由于近年现代化 教学要求提高,为了适应教学改革的形式,构建了教学平台来对教学工作的完成 加以提升。为了便于老师学生使用和很快掌握教学平台的使用方法,所以要做到 界面清晰、友好、操作方便,让广大的师生都能轻松使用一个完善的、符合实际 需求的教学环境。由于a j a x 技术加重了客户端的编程,以前可以在服务器编程 实现的功能,需要在客户端实现,或者一些以前不能通过服务器编程实现的功能 现在可以通过a j a x 实现了。本文研究了如何将以前需要多步操作才能完成的工 作,转移一部分到客户端完成,充分利用客户端的空闲资源,让用户操作和系统 表现更加合理,更具有亲和力。 第l 章介绍w e b 应用技术的发展状况,说明当前发展的由来和现状,重点说 明a j a x 在w e b 技术中的地位和作用 第2 章分析a j a x 相关的技术,这是a j a x 技术基础,主要突出a j a x 技术 的组成部分和应用条件。 。 第3 章首先介绍了几个著名的a j a x 框架,它们都是开发成熟的a j a x 应用 的基础研究它们是为了更好的发掘它们的优势,在教学平台中合理和适当的地 方加以应用。接着介绍了a j a x 技术和设计模式的结合点,通过设计模式的应用 能够更好的总结应用的共通点。重点讲解在教学系统中对a j a x 应用的例子,力 图表现出a j a x 能够带来的好的用户体验 第4 章阐述了a j a x 应用的性能和安全性方面的问题,并且举例说明了怎样 去优化教学平台的性能。 第5 章谈自己对a j a x 技术的一些总结和展望,以及该技术在教学系统中还 有什么其它的潜在应用

温馨提示

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

评论

0/150

提交评论