目录

  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. Java基础学习(五)—Collection

    一.Collection概述 1.数组和集合的区别 (1)长度区别      数组长度是固定的,集合长度是可变的. (2)存储内容区别      数组只能存放同一种类型的元素(基本类型/引用类型). ...

  2. ECP系统J2EE架构开发平台

    一 体系结构 ECP平台是一个基于J2EE架构设计的大型分布式企业协同管理平台,通过采用成熟的J2EE的多层企业架构体系,充分保证了系统的健壮性.开放性和扩展性.可选择部署于多种系统环境,满足不同类型 ...

  3. Java事物基础总结

    1.什么是事物? 事物是逻辑上的的一种操作,这个操作过程中的每一个元素要么全部成功,要么全部失败.例如,银行转账过程视为一个事物,转出过程和转入过程要求全部成功或全部失败,通过提交事物或者回滚事物实现 ...

  4. Python学习_ConfigParse (转)

    1.基本的读取配置文件   -read(filename) 直接读取ini文件内容 -sections() 得到所有的section,并以列表的形式返回 -options(section) 得到该se ...

  5. 【知识必备】浅淡MVP在Android项目中的实战演习,让代码结构更简单~

    一.写在前面 讲道理,这次是真的笔者很久都没有更新blog了,主要最近维护的框架问题也是层出不穷,而且对技术交流群的解答也让我身心疲惫,所以在这里跟关注我的人说声抱歉,没有定期给你们带来福利,那么这里 ...

  6. 基于Hadoop分布式集群YARN模式下的TensorFlowOnSpark平台搭建

    1. 介绍 在过去几年中,神经网络已经有了很壮观的进展,现在他们几乎已经是图像识别和自动翻译领域中最强者[1].为了从海量数据中获得洞察力,需要部署分布式深度学习.现有的DL框架通常需要为深度学习设置 ...

  7. Angularjs快速入门(一)

    这系列是看<用angularjs开发下一代web应用>的笔记. angular也接触几个月,总觉得不甚明白,写起来总是不那么如意.希望这本书看完了可以改变现在的状况.好了废话不多说开始: ...

  8. 进程间通信系列 之 socket套接字及其实例

    进程间通信系列 之 概述与对比   http://blog.csdn.net/younger_china/article/details/15808685  进程间通信系列 之 共享内存及其实例   ...

  9. 开始使用gentoo linux——gentoo安装笔记(下)

    gentoo安装笔记(下) 上一章,已经对操作系统安装做了充分准备,并且已经从livecd(u盘系统)切换进入了gentoo安装环境中. 不过现在才是真正的开始!打起精神!这可不是在装ubuntu! ...

  10. Java AOP (1) compile time weaving 【Java 切面编程 (1) 编译期织入】

    According to wikipedia  aspect-oriented programming (AOP) is a programming paradigm that aims to inc ...