Java的Json解析包FastJson使用
阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:
速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson;
功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE 5.0以上版本;支持Android;开源 (Apache 2.0)
源码地址:https://github.com/alibaba/fastjson
Maven
1 2 3 4 5
| <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.54</version> </dependency>
|
Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。
1 2 3
| *public static final String toJSONString(Object object); public static final String toJSONString(Object object, boolean prettyFormat); public static final Object toJSON(Object javaObject); 将JavaBean转换为JSONObject或者JSONArray。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| package bean;
public class ClassToJson { private int age; private String name;
public ClassToJson(int age, String name) { this.age = age; this.name = name; }
public int getAge() { return age; }
public void setAge(int age) { this.age = age; }
public String getName() { return name; }
public void setName(String name) { this.name = name; } }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public static void main(String[] args) { ClassToJson classTJ=new ClassToJson(15,"刘诗诗"); List<ClassToJson> list=new ArrayList<ClassToJson>(); list.add(classTJ);
list.add(new ClassToJson(18,"Stephen")); JSON json= (JSON) JSON.toJSON(list); System.out.println(json); System.out.println(JSON.toJSON(list)); System.out.println(JSON.toJSON(classTJ)); System.out.println(JSON.toJSONString(list)); System.out.println(JSON.toJSONString(classTJ)); }
|