走进json

纯做笔记,请多指教...

1,json格式:

非数组: {"key" : "value"}

数组:[{"key" : "value"},{"key" : ["value","value","value","..."]}]

2,json格式验证

优秀在线验证连接:http://www.bejson.com/

3,java对象-json转换工具-->fastjson

支持:

1,单对象

序列化:JSON.toJSONString(obj);

反序列化:JSON.parseObject(JSONString,obj.class);

2,集合对象

序列化:JSON.toJSONString(obj);

反序列化:JSON.ArrayObject(JSONString,obj.class);

注意集合反序列化传入的是集合元素对象.class

3,支持复合对象(对象中的元素是对象/数组)

待续...

4,日期类型添加格式化条件:

SerializeConfig config = new SerializeConfig();
config.put(Date.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));

String s = JSON.toJSONString(date,config);

日期类型放在对象中 也可以,只要加上config就行了

......如果需要的话还可以加一些别的格式化条件

 说明一下:

SerializeConfig:是对序列化过程中一些序列化过程的特殊配置,这里用作日期格式的定义。

有关需要带类型的全类型序列化过程,需要调用JSON.toJSONStringZ()方法。

需要美化输出时候,需要打开序列化美化开关,在方法中true那个参数。

JSON.toJSONString(arr,true);

5,复杂情况反序列化:

例如:JSON.parseObject(o, new TypeReference<Map<String,Object>>() {});

 

推荐学习网址:https://www.w3cschool.cn/fastjson/fastjson-howto.html

posted @ 2017-07-17 20:46  赤子说  阅读(119)  评论(0编辑  收藏  举报