AJAX ,JSON的初步了解

   一.AJAX简介:

 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。 AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。

         基本格式:

        

	$.ajax({
		type:"post",//发送请求的方式:post/get
		url:"TestServlet",//请求接收的路径, 地址
		data:{
			username:"admin",
			password:"123"
		},//这个ajax请求所携带的参数:对象的形式
		dataType:"text",// 返回的数据类型,text,html,json,xml
		success:function(data) {
			console.log(data);
		},
		error:function(msg) {
			console.log();
		}
	});

     

通过 AJAX,JavaScript 无需等待服务器的响应,而是:

  • 在等待服务器响应时执行其他脚本

  • 当响应就绪后对响应进行处理

     true:异步, false同步,说的直白一些就是,各执行各的,就是异步,互不影响

  

我们不推荐使用 async=false(同步),但是对于一些小型的请求,也是可以的。

请记住,JavaScript 会等到服务器响应就绪才继续执行。如果服务器繁忙或缓慢,应用程序会挂起或停止。

 

      二.JSON    

           JavaScript 对象表示法(JavaScript Object Notation)。 JSON 是存储和交换文本信息的语法。类似XML

           1.  创建一个新对象:

        var JSONObj = new Object();

   2.创建一个 bookname 属性值为字符串,price属性值为数字的对象。可以通过使用 '.' 运算符访问属性。

      var JSONObj = { "bookname ":"VB BLACK BOOK", "price":500 };

      3.

  • 数据使用名/值对表示。
  • 使用大括号保存对象,每个名称后面跟着一个 ':'(冒号),名/值对使用 ,(逗号)分割。
  • 使用方括号保存数组,数组值使用 ,(逗号)分割。

   

{
    "book": [
        {
            "id":"01",
            "language": "Java",
            "edition": "third",
            "author": "Herbert Schildt"

                              /*JSON 数组在方括号中书写:

                                      数组可包含多个对象:*/

        },
        {
  • 数据在名称/值对中
  • 数据由逗号分隔
  • 花括号保存对象
  • 方括号保存数组
            "id":"07",
            "language": "C++",
            "edition": "second"
            "author": "E.Balagurusamy"
    }]
}

 

  • 名/值对集合: 这一数据结构由不同的编程语言支持。
  • 有序的值列表: 包括数组,列表,向量或序列等等。

4.JSON 语法规则  

JSON 值可以是:

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在方括号中)
  • 对象(在花括号中)
  • null

 5.在 Java 中编码 JSON

      

import org.json.simple.JSONObject;

class JsonEncodeDemo 
{
    public static void main(String[] args)
    {
        JSONObject obj = new JSONObject();

        obj.put("name", "foo");
        obj.put("num", new Integer(100));
        obj.put("balance", new Double(1000.21));
        obj.put("is_vip", new Boolean(true));

        System.out.print(obj);
    }
}

   会生成如下所示结果:

{"balance": 1000.21, "num":100, "is_vip":true, "name":"foo"}

  JSON的实例:

String s = "{\"username\":\"admin\"}";
		String s1 = "{\"result\":[{\"a\":\"b\"},{\"c\":\"d\"},99,\"aaaa\"]}";

		int[] arr = {1,2,3,4,5,6};
		System.out.println(JSON.toJSONString(arr));
		List<String> list = new ArrayList<String>();
		list.add("aaaaaaaaaa");
		list.add("bbbbbbbb");
		list.add("ccccccc");
		list.add("dddddd");
		System.out.println(JSON.toJSONString(list));
		List<District> list2 = new ArrayList<District>();
		District d1 = new District("1","地名1","2");
		District d2 = new District("2","地名2","2");
		District d3 = new District("3","地名3","2");
		list2.add(d1);
		list2.add(d2);
		list2.add(d3);
		System.out.println(JSON.toJSONString(list2));

 

 

  

  

posted on 2018-01-07 21:38  左剃头  阅读(162)  评论(0编辑  收藏  举报

导航