Ajax02 json
目录
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的更多相关文章
- Ajax02 什么是json、json语法、json的使用、利用jQuery实现ajax
目录 1什么是json 2json语法 3json的使用 4利用jQuery实现ajax编程 1 什么是json JavaScript Object Notation(JavaScript 对象表示法 ...
- 使用TSQL查询和更新 JSON 数据
JSON是一个非常流行的,用于数据交换的文本数据(textual data)格式,主要用于Web和移动应用程序中.JSON 使用“键/值对”(Key:Value pair)存储数据,能够表示嵌套键值对 ...
- 【疯狂造轮子-iOS】JSON转Model系列之二
[疯狂造轮子-iOS]JSON转Model系列之二 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇<[疯狂造轮子-iOS]JSON转Model系列之一> ...
- 【疯狂造轮子-iOS】JSON转Model系列之一
[疯狂造轮子-iOS]JSON转Model系列之一 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 之前一直看别人的源码,虽然对自己提升比较大,但毕竟不是自己写的,很容易遗 ...
- Taurus.MVC 2.2 开源发布:WebAPI 功能增强(请求跨域及Json转换)
背景: 1:有用户反馈了关于跨域请求的问题. 2:有用户反馈了参数获取的问题. 3:JsonHelper的增强. 在综合上面的条件下,有了2.2版本的更新,也因此写了此文. 开源地址: https:/ ...
- .NET Core系列 : 2 、project.json 这葫芦里卖的什么药
.NET Core系列 : 1..NET Core 环境搭建和命令行CLI入门 介绍了.NET Core环境,本文介绍.NET Core中最重要的一个配置文件project.json的相关内容.我们可 ...
- 一个粗心的Bug,JSON格式不规范导致AJAX错误
一.事件回放 今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...
- JSON.parse()和JSON.stringify()
1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf","age":"23&q ...
- json与JavaScript对象互换
1,json字符串转化为JavaScript对象: 方法:JSON.parse(string) eg:var account = '{"name":"jaytan&quo ...
随机推荐
- 漫谈PHP代码规范
前言 虽说PHP是世界上最好的语言,但是写出来的PHP代码却往往不是最美观的.究其原因,可能正式因为PHP简单易上手,适合快速迭代的特性,导致了我们沉浸在迅速完成需求迭代的窃喜中,却忘记了规范性.忽略 ...
- boostrap---btn
bootstrap入门教程,按钮.按钮风格.下拉菜单等 本教程演示: bootstrap框架的按钮.按钮大小.按钮风格.按钮组.下拉菜单制作等. 使用的版本:Bootstrap v2.3.2 . 下面 ...
- Android ShellUtils
Android中执行Shell命令的工具类 public class ShellUtils { public static final String COMMAND_SU = "su&quo ...
- POI框架实现创建Excel表、添加数据、读取数据
public class TestPOI2Excel {//创建2003版本Excel用此方法 @Test public void testWrite03Excel() throws Exceptio ...
- struts2 之 struts2数据校验
1. 数据校验一般分为2类:前端的校验(js校验),后端的校验(java代码):实际开发中大部分情况下都是采用js校验.在对数据安全要求较高的情况下可能会采用后端验证. 2. Struts2提供了后 ...
- css3 兼容各个浏览器
transform:rotate(9deg);-ms-transform:rotate(9deg); /* Internet Explorer */-moz-transform:rotate(9deg ...
- Centos7完全分布式搭建Hadoop2.7.3
(一)软件准备 1,hadoop-2.7.3.tar.gz(包) 2,三台机器装有cetos7的机子 (二)安装步骤 1,给每台机子配相同的用户 进入root : su root ---------& ...
- Java工程中使用Mybatis (工程结合Mybatis,数据可以结合Swing使用)
2011年6月iBatis 更名为 MyBatis,从 iBatis 到 MyBatis,不只是名称上的变化,MyBatis 提供了更为强大的功能,同时并没有损失其易用性,相反,在很多地方都借助于 J ...
- JavaScript中undefined 和not defined
首先呢,我们来介绍undefined,xx is not defined的区别 (创建一个html文件,在头部编写JavaScript代码) 我们先编写如下代码: <script type=&q ...
- mysql for windows(服务器)上的配置安装--实例
mysql for windows(服务器)上的配置安装 **** 下载 官网网址:https://www.mysql.com/downloads/ 选择左上角Community 再选择MySQL C ...