1 AJAX技术简介 1.1 AJAX定义
异步JavaScript和XML(AsynchronousJavaScriptand, XML, AJ AX)是多种技术的综 合,包括JavaScript, XHTML和CSS,DOM,XML和XSTL, XMLHttpRequest。其特点是:
使用XHTML和CSS标准化呈现g使用DOM实现动态显示和交互g使用XML和XSTL进行数据交换与处理g使用XMLHttpRequest进行异步数据读取g最后用JavaScript绑定和处理所有数据。
1.2AJAX的工作原理
相比较传统的Web应用程序,AJAX技术使用异步交互的数据处理工作原理。具体来说,就是AJAX技术在程序用户和数据处理服务器之间充当了中介介绍的角色,从而避免了以往在数据信处理过程中的处理与等待的无谓过程,大大提高了数据处理的效率。程序终端用户的网络浏览器执行用户指令任务时,就已经在AJAX技术下加载AJ AX 51擎。这个AJAX的引擎用JavaScript语言编写而成,通常主要用于在 一个被隐藏的框架之内。AJAX的引擎的主要作用是负责编译程序终端用户程序界面,以及与网络服务器的数据交互。AJAX引擎还可以允许程序终端用户与应用程序软件之闹实现数据交换的异步进行,并且独立于用户和网络服务器之间数据交流。当前技术条件下,可以使用JavaScript调用AJAX引擎,而不是直接从HTTP页面生成 用户指令及完成操作过程。计算机内存的数据编辑和数据验证动作,也并不需要重新加载整个页面,而只要给予AJAX实施即可。
1.3 AJAX技术的优势
人们也许已经习惯了Web服务,实际上,AJAX技术与之比较具有更加的明显的优势。
一是,由于AJAX的基本工作观念是"按用户所需选取数据"。因此,AJAX技术最大的可能减少多余的数据请求,并有效地减轻了服务器负担g三是,AJAX技术不需要刷新整个页面,更新页面,从而减少了实际和心理等待时间,带给用户更好的体验感觉,三是,AJAX技术可以把服务器负担的工作,转移到到客户端上进行。这样将有助于利用客户计算机闲置的处理能力数据,减少对服务器和带宽的工作压力,节省了磁盘占用空间和带宽租金费用g四是,实
现了异步调刑的外部数据的功能g五是,AJAX技术建fr.在一个标准化的基础上,得 到广泛支持的技术协作,同时使用技术时不需要安装插件!!It\'"载一个小程序。总的未说,AJAX技术使Web界面从应用程序中分离出来,也iiJk'J.理解为是数据和表现的分离,这对于程序终端用户和ISP服务商是一种汉赢的局面。
2 AJAX技术在WEB系统中的应用实例
当今科技发展日新月异,随着计算机编译技术的发展,互联网已从过去的WEBl.O进入到了2.0时代。作为一种象征 一-Web blog(简称Blog)是WEB2.0应用的代表。如火如茶的Blog,为互联网时代人们提供了、一个信息传播和交流的平台。面对大量的Blog用户,能够有一个动态的影响,并迅速作出反跤,Blog会吸引更多的用户使用。程序开发人员采用了AJAX技术,可以更为便利的创建有效率和动态Blog程序。
依据网站建设的总体目标和应用功能要求,AJAX技术下的阙站主体结构分为三个逻辑层次,即:AJAX逻辑操作层、用户层、数据处理层。这三个逻辑层的功能相对独立,但在技术上的相豆渗透和合作。从作用上来看,AJAX逻辑操作与用户层主要是处理和解决用户指令发言时生成的触发事件和若了参数,以此来判断用户的操作,以及XMLHttpRequest的创建和调用。而数据处理层主要用于处理数据和信息处理,并且还负责网站的结构和数据管理维护所需的信息。从数据传递过程来看,数据操作层是通过对数据库的信息处理之后,再返回到AJAX层逻辑操作层中。笔者结合Blog的用户调查投票程序编写的实例,简要介绍下主要程序代码。
(I)设置Blog调查标题。
protected void SetTideOI I定义添加 调查标题的函数
json. ResetO. II ;初始化
string ti tle= H tmlEneode( q (" title" )) I I /设置标题
if(! doc. DocumentElement. HasAttribute ("title"))
XmlAttribute xa=doc. CreateAttribute ("title"),
Doc. DocumentElement. Attributes.
Append(xa) I
doc. DoeumentElement. SetA ttribute
("title", title) I
doc, Save(filePath) I json,Sucαss=true;
(2)投票计数功能。
protected void VoteOI I定义投票计 数函数
json. ResetO I 1/初始化
string[]items=q("items").Split(", ");/1 获得投票选项
XmlElement root=doc. DocumemElem ent.
foreach(string item in items)! I投票 记数
XmlNode Xn= ((XmIElement)root.
ChildNodes[Convert. Tolnt32(item)]).
SelectSingleN ode(" count" ) I
xn. InnerText=( Convert. Tolnt32(xn.
InnerText)+ 1). ToStringO.
doc. Save(filePath) I json . Success=true.
通过以上程序代码的实现,运用AJAX技术可以完成Blog的用户调查投票功能。由于文章篇幅有限,关于Blog的其他就不再一一赘述了。