- 1
- 0
- 约1.01万字
- 约 9页
- 2017-03-05 发布于贵州
- 举报
基于DWR框架速开发AJAX应用程序
基于DWR框架快速开发AJAX应用程序
摘要:ajax,一个异步javascript和xml的缩略词,是当今快速发展的web开发界中十分热门的技术。本文首先分析了传统web技术目前所遇到的一些问题,然后介绍了ajax的基本概念、相关技术和优点,最后介绍如何利用一个ajax框架(dwr)快速构造一个ajax应用程序。
关键词:ajax
1 概述
近年来随着internet的迅速发展,基于各种技术的网络应用程序广泛应用于人们的生活中。b/s架构由于零部署,易升级,操作简单等巨大优势,迅速成为企业应用软件系统架构的主流。然而在过去几年中,人们在服务器端的开发投入了大量的精力,各种成熟的开发框架以及开发技术的不断出现,使得web应用程序在性能等方面有了很大的提高。然而web用户界面对响应灵敏方面却投入不足。在传统的web应用采用同步交互过程中,用户首先向http服务器发送一个请求。然后服务器执行某些任务,再向发出请求的用户返回一个html页面。这是一种不连贯的用户体验,服务器在处理请求的时候,用户多数时间处于等待的状态。当软件设计越来越讲究人性化的时候,这种用户体验简直与这种原则背道而驰。随着ajax技术的出现,使得web应用可以为用户提供更加自然、灵敏的浏览体验。
2 ajax技术体系
2.1 ajax的相关概念
ajax这个概念的最早提出者jesse james garrett认为:ajax是asynchronous javascript and xml(异步javascript和xml)的缩写[1]。其中异步意味着你可以经由http协议向一个服务器发出请求并且在等待该响应时继续处理另外的数据。ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合,在共同的协作中发挥各自的作用。它包括以下技术:javascript、xhtml和css、dom、xml和xslt、xmlhttprequest。其中:使用xhtml和css标准化呈现,使用dom实现动态显示和交互,使用xml和xslt进行数据交换与处理,使用xmlhttprequest对象同服务器进行异步数据读取,最后用javascript绑定和处理所有数据[2]。下图1为ajax web应用模型。
2.2 ajax的交互过程
与传统的web应用不同,ajax采用异步交互过程,使用户从请求/响应的循环中解脱出来。ajax的工作原理相当于在用户和服务器之间加了中间层即ajax引擎,使用户操作与服务器响应异步化。从而消除了网络交互过程中的处理-等待-处理缺点。用户的浏览器在执行任务时即装载了ajax引擎。ajax引擎,实际上是一个比较复杂的javascript应用程序,它负责编译用户界面及与服务器之间的交互。ajax引擎允许用户与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。现在可以用javascript调用ajax引擎来代替产生一个http的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面的需求可以交给ajax来执行[3]。
ajax实质上也是遵循request/server模式,所以基本上的流程是:对象初始化,发送请求,服务器接收,服务器返回,客户端接收,修改客户端页面内容。只不过这个过程是异步的,下图2为ajax异步交互过程。
2.3 ajax技术的优点
ajax的出现,揭开了无刷新更新页面时代的序幕,实现了web浏览器技术中大量的尚未实现的潜力。ajax尤其适用于交互较多,频繁读数据,数据分类良好的web应用。它在应用中主要具有以下优点:
①ajax的原则是“按需取数据”,所以减少了冗余数据请求和响应对服务器造成的负担。
②无刷新更新页面,减少用户实际和心理等待时间。
③ajax使web中的界面与应用分离,这样有利于页面的开发和维护。
④使用ajax可以把以前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,节约空间和带宽租用成本。
⑤ajax具有更好的用户体验,也可以调用外部数据。
⑥基于标准化的并被广泛支持和技术,并且不需要插件或下载小程序。
3 结合dwr开发ajax程序
3.1 dwr基本概念
dwr direct web remoting 项目是apache的一个开源的解决方案,它包含服务器端java库、一个dwr servlet以及javascript库。dwr是一个引擎,可以把服务器端java对象的方法公开给javascript代码。使用dwr可以有效地从应用程序代码中把ajax的全部请求-响应循环消除掉。这意味着客户端代码再也不需要直接处理xmlhttprequest对象或者服务器的响应,不再需要编写对象的序列化代码或者使用第三方工具才能把对象变成xml,甚至不再需要
您可能关注的文档
最近下载
- 2026年牛津译林版中考英语新课标1500个单词背诵清单.pdf
- 疥疮诊疗中国专家共识(2026版)解读PPT课件.pptx VIP
- 《烟雾病和烟雾综合征诊断与治疗中国专家共识(2024)》解读PPT课件.pptx VIP
- 2024年改良型新药行业研究报告及未来五至十年预测分析报告.docx
- 乡镇民主生活会批评与自我批评.docx VIP
- 陕西凤翔县马家庄秦墓出土的出土陶罐.docx VIP
- 采血后预防淤青的按压方式.pptx VIP
- 纺织厂供配电系统设计.doc VIP
- 乡镇领导班子成员相互批评意见.docx VIP
- 30.XX中专职业学校“十五五”五年中长期发展规划(2026-2030年).pdf
原创力文档

文档评论(0)