JavaScript对象表示法(适合于服务器与JavaScript的客户端交互)

可以用来表示String number boollean 数组 对象  等数据类型。 

JSON文本格式数据解析成对象

JS中的应用:

一、JSON字符串转换为JSON对象

要使用上面的str1,必须使用下面的方法先转化为JSON对象:

//由JSON字符串转换为JSON对象

var obj = eval('(' + str + ')');

或者

var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

如:var user ='{"id":1001,"name":"朱海涛","hobby":["编程","打球"]}';

用这种方法解析:key必须为双引号

或者

var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

然后,就可以这样读取:

Alert(obj.name);
Alert(obj.sex);
        <script type="text/javascript">
             var user ="{'id': 1001,'name': '朱海涛','hobby':['编程','打球']}";
             var userObject=eval("("+user+")");
             alert("JSON字符串转换成对象后:id:"+userObject.id+"用户名:"+userObject.name);
             alert("数组中的数据,爱好:"+userObject.hobby[0]+"  "+userObject.hobby[1]);
         </script>

二、可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。

例如:

var last=obj.toJSONString(); //将JSON对象转化为JSON字符
或者
var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
alert(last);

java中的应用: 

public class JSONTest{
    //将java对象转换成JSON
    @Test
    public void TestJson(){
        User user=new User();
        user.setUserId(1715925062);
        user.setUserName("朱海涛");
        user.setUserAge(18);
        JSONObject object=JSONObject.fromObject(user);
        System.out.println(object);
    }
    //将java数组转换成JSON
    @Test
    public void TestArray(){
        String [] usersName= {"小明","小刚","小涛","小浪"};
        JSONArray arrays=JSONArray.fromObject(usersName);
        System.out.println(arrays);
    }
    //将List转换成JSON
    @Test
    public void TestList(){
        List <User> users=new ArrayList<User>();
        for(int i=0;i<3;i++){
            User user =new User();
            user.setUserName("张三"+i);
            user.setUserId(new Random().nextInt(100));
            user.setUserAge(new Random().nextInt(100));
            users.add(user);
        }
        JSONArray jsonArray=JSONArray.fromObject(users);
        System.out.println(jsonArray);
    }
}

1.什么是 AJAX ?
AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。

2.AJAX的特点:
通过AJAX与服务器进行数据交换,AJAX可以使网页实现局部刷新。

3.AJAX的核心:
Ajax的核心是JavaScript对象XMLHTTPRequest,简而言之,XMLHttpRequest使您可以通过
JavaScript想服务器进行处理响应。

4.同步和异步的概念 B/S模式(同步)Ajax(异步)
同步交互:指发送一个请求,需要等待返回,然后才能够发送下一个请求,有个等待过程;
异步交互:指发送一个请求,不需要等待返回,随时可以再发送下一个请求,即不需要等待。 
区别:一个需要等待,一个不需要等待,在部分情况下,我们的项目开发中都会优先选择不需要等待的异步交互方式。
小白式理解:
同步:你现在传输吧,你完成了,我在做事
异步:你现在传输吧,我去做我的事情了,数据传输完了之后告诉我一声