一,JSON
1.1 概念
概念:JavaScript Object Notation,JavaScript 对象表示法
作用:主要用户存储和交换文本信息
特点:
速度快
占用小
易于解析
1.2 语法
数据在 ‘‘键值对’’ 中,json 数据是由键值对构成的
键用单(双)引号括起来
值:
数值(小数或者整数)
字符串
逻辑值(true、false)
数组
对象
null
注:
数据由键值对组成,键值对之间用冒号连接,键值对与键值对之间用逗号分隔
大括号用于保存对象
中括号用于保存数组
获取方式:
json对象 . 键
json对象[" 键 "]
数组对象[ 索引 ]
注:
使用 for(var t in 数据源) 可以遍历 json,如果数据源是json数组,那么t是索引,如果数据源是json对象,那么t是这个对象中的每一个键
1.3 JSON数据与Java对象的转换
JSON解析器:Jsonlib Gson jackson
Java对象转换成JSON
导入jar包 jackson-annotations-2.2.3.jar、 jackson-core-2.2.3.jar、 jackson-databind-2.2.3.jar
创建 jackson 的核心对象 ObjectMapper
ObjectMapper mapper = new ObjectMapper();
1.
调用方法进行转换
writeValueAsString(Object obj)
mapper.writeValue(File f,Object obj);
mapper.writeValue(Writer w,Object obj);
mapper.writeValue(OutputStream os,Object obj);
JSON转换成Java对象
导入jar包 jackson-annotations-2.2.3.jar、 jackson-core-2.2.3.jar、 jackson-databind-2.2.3.jar
创建 jackson 的核心对象 ObjectMapper
ObjectMapper mapper = new ObjectMapper();
1.
调用方法进行转换
readValue(String json,Class c)
readValue(File f,Class c)
readValue(Reader r,Class c)
readValue(InputStream is,Class c)
二,AJAX
2.1 概念
概念:Asynchronous JavaScript And Xml ,异步的JavaScript和XML,异步请求,局部刷新
同步:客户端向服务器发起请求后,必须等待服务器的响应后,才能执行其他操作
异步:客户端向服务器发起请求后,不需要等待服务器的响应就可以执行其他操作
AJAX是一种无需加载整个页面的情况下,就能更新部分页面的技术
与传统页面相比,传统页面必须重新加载整个页面,而使用ajax技术就能实现局部更新
作用:提升用户体验
2.2 使用步骤
创建执行异步请求的核心对象
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
建立连接
xmlhttp.open(参数1,参数2,参数3);
1.
参数:
提交方式:POST、GET
请求的地址
使用同步还是异步:true(异步)、false(同步)
发送请求
xmlhttp.send();
1.
注:
如果使用get方式提交,提交的参数要拼接在url地址后,send()方法中不需要再写提交的参数
如果使用post方式提交,提交的参数要写在send()方法的参数列表中,并在发送请求前,先添加以下请求头,
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
1.
接收服务器响应回来的数据
复制
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
alert(xmlhttp.responseText);