1、Student实体类
注:实体类的必须有一个空的构造方法,反序列化时默认会调用无参构造方法。
/**
* <pre>
* </pre>
*
* @author yuxuan.chen
* @time 2018年6月27日 下午1:19:53
*/
public class Student {
String name;
int age;
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
/**
* <pre>
* </pre>
*
* @author yuxuan.chen
* @time 2018年6月27日 下午1:20:47
*/
public class jsontest {
/**
* <pre>
* </pre>
*
* @param args
*/
public static void main(String[] args) {
Map<Integer, Student> sks = new HashMap<Integer, Student>();
Student ss1 = new Student("张珊1", 15);
Student ss2 = new Student("张珊2", 16);
Student ss3 = new Student("张珊3", 17);
sks.put(1, ss1);
sks.put(2, ss2);
sks.put(3, ss3);
// Map对象转换为json字符串
String json = JSON.toJSONString(sks);
System.out.println(json);
// json 转对象。new TypeReference<T>() 想转为什么装什么。
Map<Integer, Student> parseObject = JSON.parseObject(json, new TypeReference<Map<Integer, Student>>() {
});
// Map<String, Student> parseObject = JsonUtil.parse(json, Map.class);
// System.out.println(parseObject.get(2));
System.out.println(parseObject);
// Student student = (Student) parseObject.get(2);
Student object = parseObject.get(1);
System.out.println(object.getName());
}
}