json三-------com.alibaba.fastjson

Posted 孟夏草木长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了json三-------com.alibaba.fastjson相关的知识,希望对你有一定的参考价值。

1.需要阿里巴巴的fastjson.jar

下载地址:http://download.csdn.net/download/muyeju/9999520

2.将json字符串转为JSONObject,通过JSONObject.parseObject(json字符串),取值的话通过json对象的getString(),getIntValue()等等获取JSONObject的值

String student = "{\'name\':\'张三\',\'age\':30}" ;
JSONObject json = JSONObject.parseObject(student) ;
System.out.println("----------"+json.toString());
System.out.println("----------"+json.getString("name"));
System.out.println("----------"+json.getIntValue("age"));
结果:
----------{"age":30,"name":"张三"}
----------张三
----------30

3.将json字符串转为JSONArray,通过JSONArray.parseArray(json字符串),取值通过循环读取,读取的每一条数据,对象是一个JSONObject,集合就是JSONArray,然后通过json对象的getString(),getIntValue()等等获取JSONObject的值

String stu = "[{\'name\':\'张三\',\'age\':20},{\'name\':\'李四\',\'age\':30}]" ;
JSONArray jsonArray = JSONArray.parseArray(stu) ;
for (Object o : jsonArray) {
    JSONObject j = JSONObject.parseObject(o.toString()) ;
    System.out.println("-----------"+j.getString("name"));
    System.out.println("-----------"+j.getIntValue("age"));
}
结果:
        -----------张三
        -----------20
        -----------李四
        -----------30
    

4.将对象、集合转为json字符串用JSON.toJSONString() ;

Student s = new Student() ;
s.setAge(20);
s.setName("张三");
String sutdent = JSON.toJSONString(s) ;
System.out.println("-----------"+sutdent);
         
List<Student> students = new ArrayList<Student>() ;
students.add(s) ;
String j = JSON.toJSONString(students) ;
System.out.println("--------------"+j);

结果:
-----------{"age":20,"name":"张三"}
--------------[{"age":20,"name":"张三"}]

 5.总结

  fastjson是阿里巴巴公司开发的一个高性能JSON处理器,FastJson采用独创的算法,将parse的速度提升到极致,超过所有json库,所以它的性能很好。

以上是关于json三-------com.alibaba.fastjson的主要内容,如果未能解决你的问题,请参考以下文章

json三-------com.alibaba.fastjson

android json解析三种方式哪种效率最高

json(我懒,这篇只看三分钟)

自定义统一api返回json格式(app后台框架搭建三)

IOS 初学者笔记(三)JSON转Model

[三] ASP.NET Core配置文件