目录

  1什么是json

  2json语法

  3json的使用

  4利用jQuery实现ajax编程

1 什么是json

  JavaScript Object Notation(JavaScript 对象表示法)

  是一种轻量级的数据交换格式。  

  注:
    数据交换:将数据先转换成一种与平台无关的数据 格式(比如转换成xml),然后发送给接收方来处理。 
    轻量级:与xml相比,JSON文档更小,解析的速度更快。

2 json语法

  2.1 表示一个对象

    {属性名:属性值,属性名:属性值...}

    JSON对象在大括号中书写
    注:
      属性名必须使用双引号括起来(即:属性名必须是字符串)。
      属性值可以是string,number,true/false,null,object。
      属性值如果是string,必须使用双引号括起来。

  

  2.2 表示一个数组

    JSON 数组在中括号中书写。

    JSON 中数组值必须是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。

    JavaScript 中,数组值可以是以上的 JSON 数据类型,也可以是 JavaScript 的表达式,包括函数,日期,及 undefined

  

3 使用json

  3.1 将Java对象转换成json字符串

    使用json-lib(JSONObject,JSONArray)

    

 package test;

 import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Random; import entity.Stock;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject; public class TestJson implements Serializable { private static void test01() {
Stock stock = new Stock();
stock.setCode(111);
stock.setName("重庆力帆");
stock.setPrice(10); System.out.println(stock); // 将Java对象装换成json字符串
JSONObject jsonObj = JSONObject.fromObject(stock);
String str = jsonObj.toString();
System.out.println(str);
} private static void test02() {
List<Stock> stocks = new ArrayList<Stock>();
Random r = new Random();
for(int i = 0; i < 4; i++) {
Stock stock = new Stock();
stock.setCode(111 + i);
stock.setName("重庆力帆0" + i);
stock.setPrice(r.nextInt(30)); stocks.add(stock);
} System.out.println(stocks); // 将多个Java对象组成的集合或者数组转换json字符串
JSONArray jsonArr = JSONArray.fromObject(stocks);
String arr = jsonArr.toString();
System.out.println(arr); } public static void main(String[] args) {
test01();
test02();
} }

Java对象转换成json字符串

  3.2 将json字符串转换成js对象

    javascript内置的一个对象JSON提供的方法(parse)

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
// 使用json语法表示一个对象
function f1() {
var obj = {"code":"123321","name":"fury","price":10};
alert(obj.name);
}; function f2() {
var obj = {"name":"庠序科技",
"address":{
"city":"重庆",
"street":"沙坪坝三峡广场",
"phone":12332188
}
};
alert(obj.address.street);
}; // 使用json语法表示一个由对象组成的数组
function f3() {
var arr = [
{"name":"warrior","age":24},
{"name":"fury","age":18}
];
alert(arr[1].name);
} // 将json字符串转换成javascript对象
function f4() {
var str = '{"name":"warrior", "age":24}';
// 利用javascript内置的JSON对象提供的方法来做转换
var obj = JSON.parse(str);
alert(obj.name);
} // 将json数组字符串转换成js数组
function f5() {
var str = '[{"name":"warrior","age":24},' +
'{"name":"fury","age":18}]';
// 注意:返回的是由js对象组成的数组
var arr = JSON.parse(str); alert(arr[1].name);
}
</script>
</head>
<body style="font-size:30px">
<a href="javascript:f1();">ClickMe 1</a>
<hr />
<a href="javascript:f2();">AlsoClickMe 2</a>
<hr />
<a href="javascript:f3();">To clicke me 3</a>
<hr />
<a href="javascript:f4();">Clike Me 4</a>
<hr />
<a href="javascript:f5();">Also Clike Me 5</a>
</body>
</html>

json字符串转换成js对象

4 利用jQuery实现ajax编程

  利用jQuery实现ajax编程只需要实现 $.ajax() 方法就行了

  4.1 用法

    $.ajax({});

    

  4.2 常见的选项参数有这样一些

    url: 请求地址。 
    type: 请求类型(比如 'get')。 
    data: 请求参数,有两种格式:
      第一种:请求字符串形式,比如 "size=3"。
      第二种:对象形式,比如 {"size":3} 。

      

    dataType:服务器返回的数据类型(text: 文本, json: json字符串, xml: xml文档)
    success:当服务器处理正确,用来处理服务器返回的 数据的函数。
    error:当服务器出错,用来处理异常的函数。

本博客源代码:点击前往

Ajax02 json的更多相关文章

  1. Ajax02 什么是json、json语法、json的使用、利用jQuery实现ajax

    目录 1什么是json 2json语法 3json的使用 4利用jQuery实现ajax编程 1 什么是json JavaScript Object Notation(JavaScript 对象表示法 ...

  2. 使用TSQL查询和更新 JSON 数据

    JSON是一个非常流行的,用于数据交换的文本数据(textual data)格式,主要用于Web和移动应用程序中.JSON 使用“键/值对”(Key:Value pair)存储数据,能够表示嵌套键值对 ...

  3. 【疯狂造轮子-iOS】JSON转Model系列之二

    [疯狂造轮子-iOS]JSON转Model系列之二 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇<[疯狂造轮子-iOS]JSON转Model系列之一> ...

  4. 【疯狂造轮子-iOS】JSON转Model系列之一

    [疯狂造轮子-iOS]JSON转Model系列之一 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 之前一直看别人的源码,虽然对自己提升比较大,但毕竟不是自己写的,很容易遗 ...

  5. Taurus.MVC 2.2 开源发布:WebAPI 功能增强(请求跨域及Json转换)

    背景: 1:有用户反馈了关于跨域请求的问题. 2:有用户反馈了参数获取的问题. 3:JsonHelper的增强. 在综合上面的条件下,有了2.2版本的更新,也因此写了此文. 开源地址: https:/ ...

  6. .NET Core系列 : 2 、project.json 这葫芦里卖的什么药

    .NET Core系列 : 1..NET Core 环境搭建和命令行CLI入门 介绍了.NET Core环境,本文介绍.NET Core中最重要的一个配置文件project.json的相关内容.我们可 ...

  7. 一个粗心的Bug,JSON格式不规范导致AJAX错误

    一.事件回放  今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...

  8. JSON.parse()和JSON.stringify()

    1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf","age":"23&q ...

  9. json与JavaScript对象互换

    1,json字符串转化为JavaScript对象: 方法:JSON.parse(string) eg:var account = '{"name":"jaytan&quo ...

随机推荐

  1. Git版本切换

    前面的话 本文将以一个简单实例的形式来介绍Git版本切换 初始版本 首先,在一个自定义的位置,创建目录a,比如在D盘下 [注意]本文会用到一些常用的Linux的Shell命令,详细信息移步至此 先使用 ...

  2. javascript里的几种常见的数组方法

    Array()的几种方法 1.splice(2,3,4)删除数组中任意项(三个参数). 2.splice(1,3)删除从第一项开始的往后三项(两个参数).(splice可以结合pop(),unshif ...

  3. C# 遍历泛型集合

    /// <summary> /// 遍历泛型 /// </summary> /// <typeparam name="T"></typep ...

  4. JS&Jquery中的遍历

    JavaScript中的遍历: 1.for 遍历 var anArray = ['one','two']; for(var n = 0; n < anArray.length; n++) {   ...

  5. 获取camera截屏图片

    Camera camera; SpriteRenderer sprRender; Texture2D t2d = New Texture2D(1300, 760, TextureFormat.RGB2 ...

  6. stm32通过电调带动电机(可按键调速)

    这几天在做32通过电调带动电机的实验,上网一查,发现这方面的资料很少,经过自己的亲自实践,总结出以下经验,供大家参考. 论坛上也有很多人说自己在做,但是都遇到了同样的瓶颈.我想他们大多是pwm的频率和 ...

  7. Hibernate启动非常慢问题分析

    项目中使用hibernate3,在启动项目过程中,发现加载显示数据很慢,要多几分钟才显示出数据,没有报其他异常.今天特别慢,过了好久都不加载显示数据. 排查思路有以下几个方面: 1.数据库是否开启.检 ...

  8. PROFINET有什么用

    “工业4.0”是当前制造业最热门的话题,所以不谈这个话题都不好意思跟同行们打招呼.“工业4.0”里面的一个重要内容是智慧工厂,工厂流水线设备之间通信,无论是传统的有线连接还是先进的无线连接与分布式控制 ...

  9. java多线程-消费者和生产者模式

    /* * 多线程-消费者和生产者模式 * 在实现消费者生产者模式的时候必须要具备两个前提,一是,必须访问的是一个共享资源,二是必须要有线程锁,且锁的是同一个对象 * */ /*资源类中定义了name( ...

  10. checkbox的选中、全选、返选、获取所有选中的值、所有的值、单选全部时父选中

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...