json基本格式,以及fastjson基本用法,包括序列化与反序列化
JSON 是什么
是一种文本方式展示结构化数据的方式
结构和类型
对象用{},内部是“key”:”value”
数组用[]表示,不同值用逗号分开
优缺点
优点:平台无关性
缺点:性能一般,缺少schema
API
序列化
基本序列化
1 | User u = new User(); |
使用WriteClassName特性
序列化的时候写入类型信息,反序列化的时候,可以根据类型自动识别
1 | Color color = Color.RED; |
循环引用
1 | A a = new A(); |
使用@JSONField Annotation
1 | (name ="hah") |
反序列化
指定CLass信息反序列化
1 | JSON.parseObject(s,User.class); |
类型集合的反序列化
1 | List<User> users = JSON.parseArray(s,User.class); |
泛型集合的反序列化
1 | Map<String,User> userMap = JSON.parseObject(s,new TypeReference<Map<String,User>>(){}); |
参考文献
http://kimmking.github.io/2017/06/06/json-best-practice/