Ajax
Ajax(asynchronous javascript and xml)异步的js,,xml
它可以使用js 访问服务器,而且是异步的
异步交互:
发送一个请求,无需等待服务器响应,就可以发送第二个请求,可以说使用js接受服务器的响应然后使用局部刷新。
同步交互:
发送一个请求,就要等待服务器响应结束才可以发送第二个请求,
Ajax应用场景:
百度的搜索框,当输入一个字就会出先提示框,有10个相关的内容。
注册的时候,如果输入用户名的时候,如果重复就会有提示,这也是异步交互。
Ajax的优缺点:
异步交互:增加了用户体验
性能:因为服务器无需再响应整个页面,只需要响应部分内容,所以服务器的压力减轻了。
缺点:
不可以应用在所有的场景,增加了对服务器的交互次数,增加服务器的压力。
Ajax发送异步请求(四部)
1 第一步: 得到(XMLHttpRequest)
大多数浏览器都支持Var xmlHttp = new XMLHttpRequest();
2 第二步:(打开和服务器的链接)
xmlHttp.open(“GRT”,”/day23_1/Aservlet”,true);需要三个参数1 请求方式 get,post请求的URL 指定服务器资源,例如/Aservlet;请求是否异步:如果是true表示异步。否则同步
3 第三步:(发送请求)
xmlHttp.send(null);参数就是请求体的内容如果是GET,就必须给出NULL。
4 第四步()
在xmlHttp对象的一个事件上注册监听器:onreadystatechang
xmlHttp对象一共有五个状态
得到状态var stat xmlHttp.readyState;
得到服务器的响应的状态码
Var status = xmlHttp.status;
得到服务器的响应的内容:
Var context = xmlHttp.responseText;
Var context = xmlHttp.responseXML;//返回document对象
Xstream
可以把JavaBean转化为xml
核心jar包:xstream-1.4.7.jar xpp3_min-1.1.4c
使用步骤:Xstream xstream = new XStream();
String s = xstream.toXML(javabean);
System.out.println(s);
使用细节:
别名:把类型对应的元素名修改了
Xstream.alias(“chian”,List.class);
Xstream.alias(“province”,province.class);
JSON
1 是js提供的一种数据交换格式!
Json的语法:{}:是对象
属性名必须使用双引号括起来!单引号不行。
属性值有null ,数值,字符串,数组,Boolean
应用:var person = {“name”:”zhagnsan”,”age”:18};
json与xml 比较: