Ajax开发简略

来源:互联网 发布:mariadb与mysql 兼容 编辑:程序博客网 时间:2024/05/20 13:06
Ajax(Asynchronous Javascript and XML)是2005年2月才正式提出的一项综合技术,其主要特点是为Web开发提供异步的数据传输和交换方式,可以在不重载(Reload)刷新(Refresh)界面的情况下与服务器进行数据交换。随着Ajax在Google Mail、Google Suggestion等产品的广泛运用,Ajax正逐渐吸引着Web开发界的眼球,成为Web开发的热点。Ajax通过综合运用Javascript、XHTML和CSS、DOM、XML和XSTL、XMLHttpRequest的技术,在提高数据交互速度,改善用户体验等方面发挥着重要作用。其中:■XHTML和CSS具有灵活、可拼装、基本、结构化等特点,被Ajax用来将系统数据呈现给用户,构建一个标准化的用户界面。■DOM由于对HTML、XHTML、XML拥有强大的操作能力以及结构化的操作方法,故被Ajax用来实现数据动态的显示与交互。■XML和XSTL在结构化的数据表示、传输、交互、共享方面有特别大的优势。因此,XML和XSTL在Ajax中主要用做数据交换与处理。■XMLHttpRequest是XMLHTTP组件的对象,它使Ajax可以向服务器发起异步的通信请求、并接收服务器返回的数据。这样,Ajax可以像桌面应用程序一样在不刷新界面的情况下与服务器进行数据交换。■Javascript因为具备简单、灵活、丰富的客户端控制和表现等优点,所以被用来操作HTML、XHTML、CSS,绑定和处理所有的数据。在Ajax出现之前,Javascript、XHTML和CSS、DOM、XML和XSTL、XMLHttpRequest基本上是各自为政的,Ajax让这些技术第一次有了交集,并且组成一个整体。相信随着Ajax的逐渐成熟和更加广泛的运用,Ajax将为Web开发应用带来更多的惊喜。在写作本书之前,笔者在个人Blog上发布了《Ajax开发简略》系列文章,引起了读者的强烈反响,并经CSDN、dev2dev等知名网站、论坛转载和收录。本书将继续延续《Ajax开发简略》系列文章通俗易懂、理论与案例并重等特点,详细介绍Ajax的历史、各项组成技术、封装、开源和商业框架等各种相关知识,并提供丰富实用的开发案例和综合案例,引导读者一步步地了解并掌握Ajax的开发方法。本书读者对象本书系统地介绍了利用Ajax进行Web应用程序开发的各个方面。适合的读者对象有:■需要利用Ajax来提供异步数据传输和交换方式的Web开发、设计人员。■在Web开发设计中需要不刷新页面的情况下,能与服务器进行交互的Web开发、设计人员。■需要提高Web系统数据传输速率的Web开发、设计人员。■需要改善Web系统用户体验的Web开发、设计人员。■对Web 2.0有浓厚兴趣的读者。■希望详细了解Ajax技术的其他读者。本书特色目前市场上有关Ajax的图书正在纷纷登场,但本书有如下的重要特色:■系统概述了Ajax开发的方方面面,以帮助读者全面了解Ajax。■遵循认知习惯,从简单到复杂,从单独编码到封装,再到通用框架,帮助读者一步步掌握Ajax的开发。■结合相关理论提供丰富、真实和完整的开发案例,让Ajax能真正应用到读者的实际开发工作中。■由一线开发人员专门针对国内开发人员撰写,更适合开发人员阅读与实践。■针对不同层次读者的需要,在有些章节末尾,推荐深入学习的参考资料。示例应用和代码清单本书中涉及的所有应用和代码清单都可以从博文视点(http://www.broadview.com.cn)网站资源下载文件中得到。本书凡涉及需要动态解析的页面都采用Java、JSP语言编写,代码提供了必要的注释,读者可以根据需要用其他语言改写。测试某一章节的应用代码是很容易的,只要简单地把应用复制到JSP Web容器(比如Tomcat),并根据需要和书中的说明进行相应的配置即可。每个应用的名称都是和相应的章节对应的,比如,AjaxCh01是第1章随带的应用,AjaxCh05是第5章随带的应用,依次类推。如果一个章节下面有多个示例应用,则分别用类似AjaxCh01a、AjaxCh01b、AjaxCh01c的规则命名。本书内容本书分为概念篇(第1~4章)、开发篇(第5~8章)和案例篇(第9~12章)三个部分共12章组成。具体内容如下:第1章 Ajax介绍本章介绍Ajax的起源和它的具体含义,以及Ajax在Web应用程序大家庭中的地位,并简述如何应用Ajax,帮助读者形成对Ajax的初步印象。第2章 B/S请求响应机制与Web开发模式本章简要介绍了HTTP协议以及Web系统遵循的B/S请求响应机制,概括了当前常用的几种Web开发技术(CGI、ASP、JSP、CGI、PHP、.NET)所采用的开发模式,并阐述了Ajax在Web系统中所处的位置。另外,还为后续章节的案例开发和测试搭建一个可用的开发环境。第3章 Ajax概览本章从宏观的角度了解为什么使用Ajax,Ajax有什么优点和缺点,Ajax都应用到了哪些系统和领域中,以及采用各种解决方案的开发人员应该如何选择相应的Ajax技术。另外,本章还举了一个简单的例子,让读者快速体验Ajax的应用效果。第4章 Ajax用到的技术Ajax是一项综合的技术。本章将引导读者掌握开发Ajax需要的相关技术基础,尤其是DOM、XMLHttpRequest和XML。通过本章的学习,读者能够具备Ajax开发的技术基础。第5章 简单的Ajax开发框架本章结合第4章提到的各项技术,在详细的讲解和案例中形成一个简单的典型开发框架。本书的第6~9章都将使用并扩展这个框架做示范。第6章 使用responseText处理返回的普通文本信息本章列举了4个案例来详细阐述如何运用responseText处理返回的普通文本信息。通过这些案例,读者可体会到Ajax对于提高数据传输速度、改善用户体验的独特作用。第7章 使用responseXML处理返回的XML信息本章列举了4个案例来详细阐述如何运用responseXML处理返回的XML信息。通过这些案例,读者可以体会到XML在结构化数据表示方面的重要作用,了解Ajax如何与XML交互。第8章 在普通文本和XML文档之间权衡responseText和responseXML是Ajax处理返回服务器信息的两种方式。本章列举了两者的优缺点,帮助读者权衡如何在需要的时候选择合适的处理方式。第9章 模拟MSN SpaceMSN Space是Ajax的一个典型应用。本章运用Ajax模拟了MSN Space的几个重要功能:固定链接、操作评论,以及管理列表项。第10章 Ajax封装本章根据第5~9章的内容,总结出四种封装Ajax的方法,以达到简化开发、提高开发效率、复用代码的目的。作为第11章、第12章的引子,本章的目的在于引导读者思考如何简化Ajax开发,通过适当的封装提高开发效率。第11章 开源Ajax框架本章简要介绍了包括DWR、Ajax Tags、AjaxAnywhere、SWATO等在内的几个开源框架,并对如何使用这些框架进行了示范。通过对比介绍,读者可以选用相应的开源框架、加入到自己的系统中,以实现加速Ajax编码的目的。第12章 商业Ajax框架本章列举了两个比较典型的商业框架,讲述了Ajax在商业产品上的运用,以作为开源Ajax框架的补充、借鉴和参考。本书的开发篇和案例篇部分的案例需求,使用自然语言的描述方法。排版约定