欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

fastjson 使用方法详细介绍

程序员文章站 2024-04-03 18:04:34
fastjson介绍 fastjson是一个java语言编写的json处理器。 1、遵循标准,为其官方网站收录的参考实现之一。 2、功能qiang打,支持jdk的各种...

fastjson介绍

fastjson是一个java语言编写的json处理器。

1、遵循标准,为其官方网站收录的参考实现之一。

2、功能qiang打,支持jdk的各种类型,包括基本的javabean、collection、map、date、enum、泛型。

3、无依赖,不需要例外额外的jar,能够直接跑在jdk上。

4、开源,使用apache license 2.0协议开源。http://code.alibabatech.com/wiki/display/fastjson/home

如果获得fastjson?

svn:http://code.alibabatech.com/svn/fastjson/trunk/
wiki:http://code.alibabatech.com/wiki/display/fastjson/home
issue tracking:http://code.alibabatech.com/jira/browse/fastjson

如果你使用了maven,maven repository配置如下:

<repository>
 <id>opensesame</id>
 <name>alibaba opensource repsoitory</name>
 <url>http://code.alibabatech.com/mvn/releases/</url>
 <snapshots>
 <enabled>false</enabled>
 </snapshots>
</repository>

pom.xml文件中加入依赖依赖:

<dependency>
 <groupid>com.alibaba</groupid>
 <artifactid>fastjson</artifactid>
 <version>1.0.4</version>
</dependency>

如果没有使用maven,可以直接下载:


使用介绍:

fastjson的最主要的使用入口是com.alibaba.fastjson.json

import com.alibaba.fastjson.json;
public static final object parse(string text); // 把json文本parse为jsonobject或者jsonarray
public static final jsonobject parseobject(string text); // 把json文本parse成jsonobject
public static final <t> t parseobject(string text, class<t> clazz); // 把json文本parse为javabean
public static final jsonarray parsearray(string text); // 把json文本parse成jsonarray
public static final <t> list<t> parsearray(string text, class<t> clazz); //把json文本parse成javabean集合
public static final string tojsonstring(object object); // 将javabean序列化为json文本
public static final string tojsonstring(object object, boolean prettyformat); // 将javabean序列化为带格式的json文本
public static final object tojson(object javaobject); 将javabean转换为jsonobject或者jsonarray。

代码示例:

代码示例用到类user和group:

public class user {
 private long id;
 private string name;
 public long getid() { return id; }
 public void setid(long id) { this.id = id; }
 public string getname() { return name; }
 public void setname(string name) { this.name = name; }
}
public class group {
 private long id;
 private string name;
 private list<user> users = new arraylist<user>();
 public long getid() { return id; }
 public void setid(long id) { this.id = id; }
 public string getname() { return name; }
 public void setname(string name) { this.name = name; }
 public list<user> getusers() { return users; }
 public void setusers(list<user> users) { this.users = users; }
}

encode代码示例:

import com.alibaba.fastjson.json;
group group = new group();
group.setid(0l);
group.setname("admin");
user guestuser = new user();
guestuser.setid(2l);
guestuser.setname("guest");
user rootuser = new user();
rootuser.setid(3l);
rootuser.setname("root");
group.getusers().add(guestuser);
group.getusers().add(rootuser);
string jsonstring = json.tojsonstring(group);
system.out.println(jsonstring);

decode 代码示例:

group group2 = json.parseobject(jsonstring, group.class);

总结

以上所述是小编给大家介绍的fastjson 使用方法详细介绍,希望对大家有所帮助