如果说有那个是最近频繁出现的关于Java Web技术的关键词的话,那就应该算Ajax了.其实我看到这个词的时候也是非常的陌生.后来看了若干帖子之后,才慢慢了解了点儿,其实我的目的不是想让看到的人能有一个深刻的理解,抛砖引玉吧!

  1. 何为Ajax?

    Ajax的意思是异步的JavaScript与XML(asynchronous JavaScript and XML)。它使用了若干项技术来构建丰富的基于Web的应用,使之有桌面程序一样的观感,这包括CSS、JavaScript、XHTML、XML、XMLHttpRequest、文档视图模型(Document and View)以及XSLT。这些应用程序拥有和桌面程序一样的互操作性和快速响应时间,而不像很多典型Web应用程序一样响应迟钝、缺乏动感。

  2. Ajax是如何工作的?在一个典型的非Ajax Web应用中,浏览器中的一个动作需要触发达到Web服务器的Http请求。服务器处理请求,例如取出数据或干其它事情,然后把HTML页面和结果一起返回给客户端(浏览器)。当两个方向上的请求都在发送或服务器正在处理数据时,用户就必须等待。

      然而,对于Ajax来说,一切都不一样。当用户打开一个Web页面,就载入了JavaScript编写的Ajax引擎。从此刻起,用户就与引擎交互,这就在用户和Web服务器之间扮演了一个中间层。Ajax引擎异步地工作、独立于任何服务器通信,所以就算当请求和响应在引擎和服务器之间被来回传送,用户还是能与应用程序交互。

  同样重要的是,引擎本身能够立即处理不需要请求服务器的动作,例如在内存中编辑数据,验证数据等。这些可以立即进行因为服务器通信没有被调用——这就像桌面应用程序一样。结果,出现了一个丰富的、与桌面应用类似的应用程序,但是它运行在浏览器中。已经有不少Ajax Web 应用了。Google非常积极地利用Ajax构建应用程序,例如Gmail和Google Local(正式名称是Google Maps)。A9搜索引擎也使用到它。还有就是大名鼎鼎的Windows Live啦!你可以赶快去看看,蛮有意思的,你可以随意拖动网页,无需刷新就可以,赶紧行动吧!