Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。那fastjson如何使用?下面来我们就来给大家讲解一下fastjson使用方法。
Fastjson介绍
Fastjson是一个Java语言编写的JSON处理器。
1、遵循http://json.org标准,为其官方网站收录的参考实现之一。
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>
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 finalT parseObject(String text, Classclazz); // 把JSON文本parse为JavaBean public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray public static finalListparseArray(String text, Classclazz); //把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 Listusers = new ArrayList(); 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 ListgetUsers() { return users; } public void setUsers(Listusers) { this.users = users; } }
Encode代码示例:
import com.alibaba.fastjson.JSON; Group group = new Group(); group.setId(0 L); group.setName("admin"); User guestUser = new User(); guestUser.setId(2 L); guestUser.setName("guest"); User rootUser = new User(); rootUser.setId(3 L); 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 使用的方法,总体来说Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象。最后大家如果想要了解更多json相关知识,敬请关注奇Q工具网。
推荐阅读: