javeEE第五周
一、定义
AndXML”(异步Javascript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX = 异步JavaScript和XML(通用标记语言的子集),是一种用于创建快速动态网页,在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
划重点:(1)AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
(2)AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
(3)AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。
二、工作原理

AJAX是基于现有的Internet标准,并且联合使用:XMLHttpRequest 对象 (异步的与服务器交换数据)、JavaScript/DOM (信息显示/交互)、CSS (给数据定义样式)、XML (作为转换数据的格式)。特别注意的是AJAX应用程序与浏览器和平台无关的。
三、应用实例
源代码如下:

分析:该应用程序包含一个 div 和一个按钮。div 部分用于显示来自服务器的信息。当按钮被点击时,它负责调用名为 loadXMLDoc() 的函数。
四、创建 XMLHttpRequest 对象
XMLHttpRequest 是 AJAX 的基础,用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
创建 XMLHttpRequest 对象的语法为:
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:
为了应对所有的现代浏览器,包括 IE5 和 IE6,请检查浏览器是否支持 XMLHttpRequest 对象。如果支持,则创建 XMLHttpRequest 对象。如果不支持,则创建 ActiveXObject。
五、 向服务器发送请求请求
XMLHttpRequest 对象用于和服务器交换数据,如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();

六、服务器响应
如需获得来自服务器的响应,请使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。

如果来自服务器的响应并非 XML,使用 responseText 属性,该属性返回字符串形式的响应。
如果来自服务器的响应是 XML,而且需要作为 XML 对象进行解析,使用 responseXML 属性。
七、总结
通过上面对Ajax的基本介绍以及查找相关资料不难发现,Ajax最大的优点是页面无刷新,在页面内与服务器通信,给用户的体验非常好。除此之外,它使用异步方式与服务器通信,具有更加迅速的响应能力;其“按需取数据”的原则也可以最大层度的减少冗余请求和响应对服务器造成的负担。以上是Ajax很显著的优点,但其所带来的缺陷也是不容忽视的,Ajax对back按钮的舍弃使它没法和js进行很好的合作,这是其所带来的比较严中的问题;此外,在网络安全问题日益突出的信息化时代,新技术产生的同时也给IT企业带来了新的安全威胁,ajax技术就如同对企业数据建立了一个直接通道,从而使得ajax难以避免的出现一些安全弱点,诸如跨站点脚步攻击、SQL注入攻击等。因此,Ajax的发展机遇与挑战同在。
参照与文章:http://www.runoob.com/ajax/ajax-intro.html
javeEE第五周的更多相关文章
- 20145213《Java程序设计》第五周学习总结补充
20145213<Java程序设计>第五周学习总结补充 教材学习内容总结 欠的账都是要还的!第九章的内容躲过对酒当歌的夜,躲不过四下无人的街.由于第五周贪玩,疏忽冷落了Collection ...
- 20145213《Java程序设计》第五周学习总结
20145213<Java程序设计>第五周学习总结 教材学习内容总结 "素衣莫起风尘叹,犹及清明可到家."每每念此,不得不心疼自己.古人清明长假都进城耍了,还担心自己清 ...
- 20145304 第五周Java学习报告
20145304<Java程序设计>第5周学习总结 教材学习内容总结 1.使用try.catch: 如果使用了try.catch,编译时会尝试执行try区块中的程序代码,如果有错误,执行流 ...
- 20145330第五周《Java学习笔记》
20145330第五周<Java学习笔记> 这一周又是紧张的一周. 语法与继承架构 Java中所有错误都会打包为对象可以尝试try.catch代表错误的对象后做一些处理. 使用try.ca ...
- 20145337 《Java程序设计》第五周学习总结
20145337 <Java程序设计>第五周学习总结 教材学习内容总结 第八章 JAVA中的所有错误都会被包装成对象,如果你愿意,可以尝试执行并捕捉代表错误的对象后做一些处理.使用了try ...
- Linux内核设计第五周——扒开系统调用三层皮(下)
Linux内核设计第五周 ——扒开系统调用三层皮(下) 一.知识点总结 1.给MenuOS增加新的命令的步骤 更新menu代码到最新版 test.c中main函数里,增加MenuConfig() 增加 ...
- 项目评价及第五周PSP的发布
5TH 各组作品ALPHA发布体会 1:俄罗斯方块组做了主要功能,这个项目我自己原来拿c语言做过一部分,感觉此游戏细节特别多,逻辑思维需要组织,以为我的水准来说,感觉做的挺好的. ...
- 20145218 《Java程序设计》第五周学习总结
20145218 <Java程序设计>第五周学习总结 教材学习内容总结 异常 程序中总有些意想不到的状况所引发的错误,如果不对异常进行正确的处理,则可能导致程序的中断执行,造成不必要的损失 ...
- 《Java程序设计》第五周学习总结
20145224 <Java程序设计>第五周学习总结 教材学习内容总结 第八章异常处理 8.1.1使用try.catch ·教材范例用户连续输入整数,输入0结束后显示输入数的平均值(代码如 ...
随机推荐
- [c/c++] programming之路(28)、结构体存储和内存对齐+枚举类型+typedef+深拷贝和浅拷贝
一.结构体存储 #include<stdio.h> #include<stdlib.h> struct info{ char c; //1 2 4 8 double num; ...
- Django Form表单组件
Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否 ...
- Mac上超好用的计时器和秒表
秒表 https://joaomoreno.github.io/thyme/ 计时器 https://github.com/michaelvillar/timer-app 更新---这个更棒!有网页有 ...
- ip xfrm命令是做什么的?
答: 设置xfrm.xfrm(transform configuration)是一个IP框架,用来转换数据包的格式,也就是使用算法来加密数据包,该框架用作IPsec协议的一部分 ip xfrm sta ...
- vue踩坑记
vue踩坑记 易错点 语法好难啊qwq 不要把'data'写成'date' 在v-html/v-bind中使用vue变量时不需要加变量名 在非vue事件中使用vue中变量时需要加变量名 正确 < ...
- UVA11996 Jewel Magic
思路 splay维护序列的hash值即可 因为有rev操作,还要维护反串的hash值 代码 #include <cstdio> #include <cstring> #incl ...
- Spark机器学习基础三
监督学习 0.线性回归(加L1.L2正则化) from __future__ import print_function from pyspark.ml.regression import Linea ...
- Redis Index
Indexes 集群 主从模型 哨兵机制与RAFT算法 实践 单机多实例 开启Sentinel 存储 持久化 RDB 与 AOF 数据结构 内存管理 事务 并发问题 分布式锁 整体图 中间件 Jedi ...
- c# linq lambda 去重,排序,取最高纪录。
----------------------------------------------------.对基础类型排序 方法一: 调用sort方法,如果需要降序,进行反转: List<int& ...
- xampp集成环境下重置mysql的密码
第一步:打开两个命令行工具,都进入到你的xampp安装目录下的mysql下的bin目录,如我安装的位置是D:xampp/mysql/bin: 第二步:在完成第一步的情况下,输入:mysqld --sk ...