1.JSON的定义
var 变量名 = {
“key” : value, // Number 类型
“key2” : “value”, // 字符串类型
“key3” : [], // 数组类型
“key4” : {}, // json 对象类型
“key5” : [{},{}] // json 数组
};
2.JSON对象、JSON字符串间的转换
// JSON对象 -> JSON字符串
var JSONString = JSON.stringify(jsonObj);
alert(JSONString);
// JSON字符串 -> JSON对象
var JSONObj1 = JSON.parse(JSONString);
alert(JSONObj1.key2);
3.JSON字符串、JavaBean对象间的转换
导入gson.jar包
public void test(){
Gson gson = new Gson();
/* JavaBean对象转换为JSON字符串 */
Person person = new Person(1,"abc");
String JsonString = gson.toJson(person);
System.out.println(JsonString);
/* JSON字符串转换为JavaBean对象 */
Person person1 = gson.fromJson(JsonString, Person.class);
System.out.println(person1);
}
4.JSON字符串、List集合间的转换
public void test2(){
Gson gson = new Gson();
List<Person> list = new ArrayList<>();
list.add(new Person(1,"a"));
list.add(new Person(2,"b"));
list.add(new Person(3,"c"));
/* List集合转换为JSON字符串 */
String JsonString = gson.toJson(list);
System.out.println(JsonString);
/* JSON字符串转换为List集合 */
List<Person> list1 = gson.fromJson(JsonString, new TypeToken<List<Person>>(){}.getType());
System.out.println(list1.get(0));
}
5.JSON字符串、Map集合间的转换
public void test3(){
Gson gson = new Gson();
Map<Integer,Person> map = new HashMap<>();
map.put(1,new Person(1,"a"));
map.put(2,new Person(2,"b"));
map.put(3,new Person(3,"c"));
/* Map转换为JSON字符串 */
String JsonString = gson.toJson(map);
System.out.println(JsonString);
/* JSON字符串转换为Map */
Map<Integer,Person> map1 = gson.fromJson(JsonString, new TypeToken<Map<Integer, Person>>() {}.getType());
System.out.println(map1);
}