您的位置:首页 > Web前端 > JavaScript

json数据格式

2016-02-21 10:47 309 查看
JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。

1.json格式的规范

JSON就是一串字符串 只不过元素会使用特定的符号标注。

{} 双括号表示对象

[] 中括号表示数组

"" 双引号内是属性或值

: 冒号表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象)

所以 {"name": "Michael"} 可以理解为是一个包含name为Michael的对象。而[{"name": "Michael"},{"name": "Jerry"}]就表示包含两个对象的数组。当然了,你也可以使用{"name":["Michael","Jerry"]}来简化上面一部,这是一个拥有一个name数组的对象。

有一个网页版工具可以校验一个string是不是合法的json,地址为:http://www.bejson.com/

2.如何序列化复杂的map?

以jackson框架与Map<Student,String>为例,序列化的时候不报错,Student对象以toString()的形式表示。反序列化的时候会失败。

原因是json的规范限制。

解决方法1:自己写Student类的deserializer。

解决方法2:将Map<Student,String>转换为 class A{List<Student> list1;List<String> list2}后再序列化,让list1与list2的下标一一对应。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: