全局刷新和局部刷新
- 全局刷新:整个浏览器被新的数据覆盖。在网络中传输大量的数据。浏览器需要加载,渲染页面。
- 局部刷新:在浏览器器的内部,发起请求,获取数据,改变页面中的部分内容。 其余的页面无需加载和渲染。网络中数据传输量少,给用户的感受好。
ajax是用来做局部刷新的。局部刷新使用的核心对象是异步对象(XMLHttpRequest)
这个异步对象是存在浏览器内存中的,使用javascript语法创建和使用xMiLHttpRequest对象。
ajax
Asynchronous Javascript and XM(异步的Javascript 和 XM).
Asynchronous:异步的意思
Javascript: javascript脚本,在浏览器中执行
and :和
xml :是一种数据格式
ajax是一种做局部刷新的新方法,不是一种语言。
ajax包含的技术主要有javascript,dom , css, xml等等。核心是javascript和xml .
javascript:负责创建异步对象,发送请求,更新页面的dom对象。ajax请求需要服务器端的数据。xml:网络中的传输的数据格式。使用json替换了xml .
创建异步对象步骤
1)创建异步对象
var xmlHttp = new XMLHttpRequest();
2)给异步对象绑定事件
onreadystatechange :当异步对象发起请求,获取了数据都会触发这个事件。
这个事件需要指定一个函数,在函数中处理状态的变化。
xmlHttp.onreadystatechange=funation ({
处理请求的状态变化。
})
3)初始异步请求对象
异步的方法open ( )
xmlHttp. open(请求方式get/post,"服务器端的访问地址",同步|异步请求(默认是true))
4)使用异步对象发送请求
xmlHttp . send ()
获取服务器端返回的数据,使用异步对象的属性responseText .
xmlHttp.responseText
readystate和status
异步对象的属性readystate表示异步对象请求的状态变化
- 0:创建异步对象时,new XMLHttpRequest( ) ;
- 1:初始异步请求对象,xmlHttp . open ()
- 2:发送请求,xmlHttp . send ()
- 3:从服务器端获取了数据,此时3,注意3是异步对象内部使用,获取了原始的数据
- 4:异步对象把接收的数据处理完成后。此时开发人员在4的时候处理数据。
异步对象的status属性,表示网络请求的状况的,200,404,500,需要是当status==200时,表示网络请求是成功的。
json
json分类:
1 json对象
JSONObject ,这种对象的格式名称:值,也可以看做是 key:value格式。
2.json数组
JSONArray,基本格式【( name:“河北”,jiancheng : “冀” , shenghui" ; “石家庄”})
json优点
- 1.json格式好理解
- 2 json格式数据在多种语言中,比较容易处理。使用java,javascript读写json格式的数据比较容易。
- json格式数据他占用的空间下,在网络中传输快,用户的体验好。
java中的json的工具库
- gson ( google )
- fastison:速度快,不是最符合json处理规范的
- jackson:性能好,规范好
- json-lib:性能差,依赖多
public static void main(String[] args) throws JsonProcessingException{
User user=new User("zhangsan",18);
ObjectMapper om=new ObjectMapper();
String json=om.writeValueAsString(user);
}