JSON简介
简介:
JSON(JavaScriptObject Notation)、轻量级数据交换格式、非常适合于服务器与 JavaScript 的交互。
JSON两种格式:
1、对象
对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
var person = { "name":"huochai", "age":29, "school":{ "name":"diankeyuan", "location":"beijing" }};
2、数组
数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
var students =
[
{"sno":"001","name":"jack","age":130},
{"sno":"002","name":"tame","age":120},
{"sno":"003","name":"cule","age":110},
];
一些JSON实例
var person = { "name":"huochai", "age":29, "school":{ "name":"diankeyuan", "location":"beijing" }};
var strJson = '{ "name":"huochai", "age":29, "school":{ "name":"diankeyuan", "location":"beijing" }}';
var aa = 'abc';
var bb = ['baidu','taobao'];
var cc = {'persons': ['zhangsan','lisi']};
var students =
[
{"sno":"001","name":"jack","age":130},
{"sno":"002","name":"tame","age":120},
{"sno":"003","name":"cule","age":110},
];
var personOther = JSON.parse(strJson);
alert(personOther.age);
JSON对象
JSON之所以流行,是因为可以把JSON数据结构解析为有用的javascript对象
ECMAScript5对解析JSON的行为进行了规范,定义了全局对象JSON
JSON对象有两个方法:stringify()和parse()。这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript值
stringify()
var strPerson = JSON.stringify(person);
alert(strPerson);
var strStudents = JSON.stringify(students);
alert(strStudents);
parse()
JSON.parse方法用于将JSON字符串转化成对象
var strPerson = JSON.stringify(person);
var personObj = JSON.parse(strPerson);
var strStudents = JSON.stringify(students);
var studentsObj = JSON.parse(strStudents);
对应的java表示:
public class Person {
public String name;
public int age;
public School school;
}
public class School {
public String name;
public String location;
}
利用fastjson将java对象转换成JSON字符串
Person person = new Person();
person.name = "huochai";
person.age = 29;
person.school = new School();
person.school.name = "diankeyuan";
person.school.location = "beijing";
String strJson = JSON.toJSONString(person);
System.out.println(strJson);
Person person2 = new Person();
person2.name = "huochai2";
person2.age = 292;
person2.school = new School();
person2.school.name = "diankeyuan2";
person2.school.location = "beijing2";
List<Person> lst = new ArrayList<Person>();
lst.add(person);
lst.add(person2);
String strJson2 = JSON.toJSONString(lst);
System.out.println(strJson2);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。