欢迎来到Java学习网!
设为首页 | 加入收藏
当前位置: 首页 > Java语言 > XML教程 >

Ajax 定义
这里说的 AJAX 可不是荷兰的阿贾克斯,而是 Asynchronous JavaScript + XML 的缩写,它也不是单一技术,而是几种技术的强有力组合。参考《Ajax: A New Approach to Web Applications》文中所说,Ajax 包括:
* XHTML 和 CSS 的标准表示;
* 使用 DOM(Document Object Model)进行动态显示及交互;
* 使用 XML 和 XSLT 进行数据交换及相关操作;
* 使用 XMLHttpRequest 进行异步数据查询、检索;
* 使用 JavaScript 将所有的东西绑定在一起。
Ajax 能够做什么?
如今 Google Suggest 和 Google Maps 使用了 Ajax,通过 Ajax,我们可以使得客户端得到丰富的应用体验及交换操作,而用户不会感觉到有网页提交或刷新的过程,页面也不需要被重新加载,应用的数据交换都被隐藏。
传统的 WEB 应用程序模型是这样工作的:用户的界面操作触发 HTTP 请求,服务器在接收到请求之后进行一些业务逻辑处理,如保存数据等,然后向客户端返回一个 HTML 页面。但这种方式并没有给予用户很好的应用体验,当服务器在处理数据的时候,用户则处于等待的状态,每一步操作都需要等待,太多的等待会使用户越来越没有耐心。而 Ajax 则大不相同,它通过 Ajax 引擎,使得应用过程很自然,操作很流畅,因为其只和服务器交换有用的数据,而页面显示等不必要的数据则不再重新加载。Ajax 引擎其实就是 JavaScript、XML、XMLHttpRequest 等等各项技术的综合应用。
当前都有谁在使用 Ajax

       传统 WEB 应用模型(左)与 Ajax 应用模型(右)的对比

传统 WEB 应用程序的同步交互模式(上)与 Ajax 应用程序的异步模式(下)的对比

当前应用 Ajax 的已有不少网站,如:

* Orkut
* Gmail
* Google Groups
* Google Suggest
* Google Maps
* Flickr 的部分特性
* Amazon 的 A9.com 搜索引擎部分

Ajax 应用前景

Ajax 的最大挑战并不是技术,组成 Ajax 的各项技术已经相当成熟、稳定及易学,主要挑战是如何使用 Ajax 设计应用程序,我们必须抛弃以往对于 WEB 局限性的看法,开始开阔视野、开放思想、不断创新,实现更加丰富的应用体验。

Ajax 项目

目前我所了解到的与 Ajax 相关的项目如下:

* SAJAX - PHP
* JPSpan - PHP
* DWR (Direct Web Remoting) - Java
* JSP (JavaScript Templates) - JavaScript

    相关教程
    推荐内容