fastjson

什么是JSON?
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

更多信息的可以查看json的官方网站http://json.org。

如何开始?
要使用fastjson,首先要获得fastjson。

•Maven用户
如果你使用maven,在这里:
http://code.alibabatech.com/wiki/display/FastJSON/Release+Notes
•直接下载
http://code.alibabatech.com/wiki/display/FastJSON/Download
序列化和反序列化
API介绍
Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。

?
package com.alibaba.fastjson;   public abstract class JSON {     public static final String toJSONString(Object object); // 序列化     public static final Object parse(String text); // 反序列化     public static final <T> T parseObject(String text, Class<T> clazz); // 带类型参数的反序列化 }

简单使用
序列化
?
Object o = ...; String text = JSON.toJSONString(o);

反序列化为JSONObject对象
?
String text = ...; // 例如 {"name":"张老头", "age":66} JSONObject json = JSON.parseObject(text);

反序列化为JavaBean
fastjson直接将json格式的文本直接反序列化为JavaBean对象

?
String text = ...; // 例如 {"name":"张老头", "age":66} User user = JSON.parseObject(text, User.class);

将JavaBean对象转换为JSON对象
?
Object o = ....; JSONObject json = (JSONObject) JSON.toJSON(o);

全序列化支持
fastjson能够支持绝大部分场景的java bean全序列化。也就是说,你可以直接把java bean序列化为json文本之后,能够按照原来的类型反序列化回来。支持全序列化,需要打开SerializerFeature.WriteClassName特性:

•序列化 ?
User user = ...; String text = JSON.toJSONString(user, SerializerFeature.WriteClassName);

•反序列化 ?
User user = (User) JSON.parse(); // 对于打开SerializerFeature.WriteClassName特性输出的JSON文本,能够直接反序列化为Java Bean对象。

你可能感兴趣的:(fastjson)