fastjson是一款编程软件软件,officeba免费提供fastjson下载,更多fastjson相关版本就在officeba。
fastjson是阿里发布的一款非常好的java开源系统json在线解析和制作器。其选用独创性的优化算法,将parse的速率提高到完美,超出现阶段全部json库,在其中包含以前称为更快的jackson和google的二进制协议书protocol buf。与此同时fastjson功能齐全,彻底适用Java Bean、结合、Map、日期、Enum,适用范型,适用反省;无依靠,可以立即运作在Java SE 5.0之上版本号;适用Android;开源系统 (Apache 2.0)等众多特点也促使其在业界深受五星好评。本网站给予fastjson一键下载。
1、性能卓越
fastjson选用独创性的优化算法,将parse的速率提高到完美,超出全部json库,包含以前称为更快的jackson。而且还超过了google的二进制协议书protocol buf
2、适用规范
Fastjson彻底适用https://json.org的规范,也是官方网百度收录的参照完成之一
3、功能齐全
适用各种各样JDK种类。包含基本上种类、JavaBean、Collection、Map、Enum、泛型等
适用循环引用
4、无依靠
不用除外附加的jar,可以立即跑在JDK上
5、适用覆盖面广
fastjson适用JDK 5、JDK 6、Android、阿里云手机等自然环境
6、开源系统
Apache License 2.0
代码托管在github.org上,新项目详细地址是 https://github.com/AlibabaTech/fastjson
7、检测充足
fastjson有超出1500个testcase,每一次搭建都是会跑一遍,丰富多彩的检测情景确保了作用平稳
1、关键的应用通道
Fastjson API通道类是com.alibaba.fastjson.JSON,常见的实例化实际操作都能够在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 parseObject(String text, Class clazz); // 把JSON文字parse为JavaBean
public static final JSONArray parseArray(String text); // 把JSON文字parse成JSONArray
public static final List parseArray(String text, Class 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
2、相关类库的一些表明
SerializeWriter:等同于StringBuffer
JSONArray:等同于List
JSONObject:等同于Map
JSON反序列化没有真真正正二维数组,实质种类全是List
3、fastjson 分析json字符串数组为四种种类
①。 JavaBean
Person person = JSON.parseObject(jsonString, Person.class);
②。 List
List listPerson =JSON.parseArray(jsonString, Person.class);
③。 List
List listString = JSON.parseArray(jsonString, String.class);
④。 List》
List》 listMap = JSON.parseObject(jsonString, new TypeReference》》(){});
留意:fastjson反射机制比gson更精确, id = 1001 根据fastjson反射面仍是 id = 1001 , 而根据gson反射面结果则为 id =1001.0
有关fastjson的应用讲起来很有可能较为抽象性,我为大伙儿例举一段简易的检测实例,期待大伙儿喜爱:
接口测试专用工具:groovy1.8.6 jdk1.6.31
接口测试:GroovyConsole
最先将FastJson.jar放进groovy\lib文件目录中,拷贝JAVA编码以下:
import com.alibaba.fastjson.JSON
import com.alibaba.fastjson.JSONObject
class Test {
static main(args){
String text = ‘{“name”:“老李头”, “age”:66}’
/** 将JSON字符串数组变换为JSON目标 **/
JSONObject json = JSON.parseObject(text)
println json.name
/** 将JSON字符串数组变换为JavaBean目标 **/
User user = JSON.parseObject(text, User.class)
println user
/** 将JavaBean目标变换为JSON字符串数组 **/
String jsonObject = JSON.toJSONString(user);
println jsonObject
/** 将JavaBean目标变换为JSON目标,出错 **/
//JSONObject userJson = (JSONObject) JSON.toJSON(user)
//println userJson
}
}
private class User {
String name
int age
}
输出结果以下:
老李头
User@19dcf69
{“age”:66,“name”:“老李头”}