1.FastJSON简单介绍
Fastjson是一个Java语言编写的高性能功能完好的JSON库。
它採用一种“假定有序高速匹配”的算法,把JSON Parse的性能提升到极致,是眼下Java语言中最快的JSON库。
下载
你能够从下面地址中下载fastjson:
Maven中央仓库 http://repo1.maven.org/maven2/com/alibaba/fastjson/
Alibaba OpenSesame开源平台 http://code.alibabatech.com/mvn/releases/com/alibaba/fastjson/
源代码
https://github.com/alibaba/fastjson
Fastjson是一个json处理工具包。包含“序列化”和“反序列化”两部分,它具备例如以下特征:
- 速度最快,測试表明。fastjson具有极快的性能,超越任其它的java json parser。包含自称最快的jackson。
- 功能强大,全然支持java bean、集合、Map、日期、Enum。支持范型,支持自省。
- 无依赖,可以直接执行在Java SE 5.0以上版本号
- 支持Android。
- 开源 (Apache 2.0)
2.简单使用
具体使用的话,大家能够去官网看,介绍非常具体,并且是中文。
使用Maven的话。配置pom.xml文件,在dependencies中加入依赖:
- <dependency>
- <groupId>com.alibaba</groupId>
- <artifactId>fastjson</artifactId>
- <version>1.1.36</version>
- </dependency>
以下是简单的測试。參考官网上的数据
- package org.ygy.fastjson;
- import org.junit.Test;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import com.alibaba.fastjson.serializer.SerializerFeature;
- public class JSONTest{
- /**
- *
- * @author yuguiyang
- * @description 序列化
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void test2JsonString() {
- User user = new User(100 , "lufei" , "shishi");
- String json = JSON.toJSONString(user);
- System.out.println(json);
- }
- /**
- *
- * @author yuguiyang
- * @description 反序列化为JSONObject对象
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void testParseObject() {
- String json = JSON.toJSONString(new User(1002 , "suolong" , "shishi"));
- JSONObject obj = JSON.parseObject(json);
- System.out.println(obj);
- System.out.println(obj.get("id"));
- System.out.println(obj.getString("name"));
- }
- /**
- *
- * @author yuguiyang
- * @description 反序列化为JavaBean
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void testParseBean() {
- String json = JSON.toJSONString(new User(1002 , "suolong" , "shishi"));
- User user = JSON.parseObject(json , User.class);
- System.out.println(user.getId() + " , " + user.getName() + " , " + user.getPassword());
- }
- /**
- *
- * @author yuguiyang
- * @description 将JavaBean对象转换为JSON对象
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void test2Json() {
- User user = new User(222 , "qiaoba" , "haha");
- JSONObject obj = (JSONObject) JSON.toJSON(user);
- System.out.println(obj.get("id") + "," + obj.get("name"));
- }
- @Test
- public void testSeria() {
- User user = new User(222 , "qiaoba" , "haha");
- String json = JSON.toJSONString(user , SerializerFeature.WriteClassName);
- User juser = (User) JSON.parse(json);
- System.out.println(juser);
- }
- }