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
5、具有超高的性能,java世界里没有其他的json库能够和fastjson可相比了。
pom,xml添加Fastjson
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.31</version> </dependency>
使用介绍:
Fastjson的最主要的使用入口是com.alibaba.fastjson.JSON
import com.alibaba.fastjson.JSON; public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray final JSONObject parSEObject(String text); // 把JSON文本parse成JSONObject final <T> T parSEObject(String text,Class<T> clazz); // 把JSON文本parse为JavaBean final JSONArray parseArray(// 把JSON文本parse成JSONArray final <T> List<T> parseArray(//把JSON文本parse成JavaBean集合 String toJSONString(Object object); // 将JavaBean序列化为JSON文本 Object object,145); background-color: inherit;">boolean prettyFormat); // 将JavaBean序列化为带格式的JSON文本 Object toJSON(Object javaObject); 将JavaBean转换为JSONObject或者JSONArray。
栗子
@Test public void testjson(){ User guestUser = new User(); guestUser.setId(2L); guestUser.setName("guest"); System.err.println("JSON.toJSONString()==="+JSON.toJSONString(guestUser));//javaBean-->Json String String usrJsontext=JSON.toJSONString(guestUser); User user=JSON.parSEObject(usrJsontext,User.class);//Json String-->javaBean System.err.println("JSON.parSEObject()==="+user.getName()); JSONObject jsonObject= (JSONObject) JSON.parse(usrJsontext);//Json String-->jsonObject 或者jsonArray System.err.println("JSON.parse()==="+jsonObject.get("name")); JSONObject jsonObject2= JSON.parSEObject(usrJsontext);//Json String-->jsonObject System.err.println("JSON.parSEObject()==="+jsonObject.get("name")); }
JsonString 转化 Map
Map user2=JSON.parSEObject(usrJsontext,Map.class);//Json String-->Map