0
点赞
收藏
分享

微信扫一扫

JavaScript Object Notation

一,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);

举报

相关推荐

0 条评论