首页  

JSON简介     所属分类 architecture 浏览量 961
JSON起源于1999年的JS语言规范ECMA262的一个子集

只有两种结构:键值对和数组,对象用{}表示 ,数组用[]表示 
基本数值有7个: false / null / true / object / array / number / string
加上嵌套,可以用来表示复杂的数据


优点
纯文本,容易阅读
规范简单,容易处理,开箱即用,JS类内建支持,可直接作为对象使用
平台无关,可作为异构系统之间的数据传输格式,譬如 HTTP/REST 

缺点
性能一般,文本表示的数据一般比二进制大 
缺乏schema,跟同是文本数据格式的XML比,在类型的严格性和丰富性上要差很多。XML可以借用XSD或DTD来定义复杂的格式,并由此来验证XML文档是否符合格式要求,


json相关类库
fastjson  jackson gson 
三种类库的使用代码
https://gitee.com/dyyx/demos/tree/master/jackson/src/main/java/dyyx


Google JSON风格指南

属性名和值用双引号,不要把注释写到对象里面,对象数据要简洁
不要随意结构化分组对象,推荐是用扁平化方式,层次不要太复杂
命名方式要有意义,比如单复数表示
驼峰式命名,遵循Bean规范
使用版本来控制变更冲突
对于一些关键字,不要拿来做key
如果一个属性是可选的或者包含空值或null值,考虑从JSON中去掉该属性,除非它的存在有很强的语义原因
序列化枚举类型时,使用name而不是value
日期要用标准格式处理
设计好通用的分页参数
设计好异常处理

上一篇     下一篇
职业修炼指南

fastjson使用实例

工程师文化

fastjson json对象 java对象 和 string 之间的转换

15条简单的职场规则

fastjson为什么这么多安全漏洞