Gson和Fastjson

1。PersonBean

package com.louis.fastjsondemo;

/** * Created by Administrator on 2016/2/26. */
public class PersonBean {

    private int id;
    private String name;
    private String address;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public PersonBean() {
        super();
        // TODO Auto-generated constructor stub
    }
    public PersonBean(int id, String name, String address) {
        super();
        this.id = id;
        this.name = name;
        this.address = address;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    @Override
    public String toString() {
        return "PersonBean [id=" + id + ", name=" + name + ", address=" + address + "]";
    }

}

2。Gson aty

package com.example.louisgsondemo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Gson gson = new Gson();
        // JavaBean数据
        PersonBean personBean = new PersonBean(1, "name1", "address1");
        String jsonString = gson.toJson(personBean);
        System.out.println("==1.jsonString=="+jsonString);
        // JavaBean数据解析
        PersonBean person = gson.fromJson(jsonString, PersonBean.class);
        System.out.println("==1.person=="+person);
        // List<JavaBean>数据
        PersonBean person1 = new PersonBean(1001, "香港", "刘德华");

        PersonBean person2 = new PersonBean(1002, "韩国", "宋慧乔");

        List<PersonBean> persons = new ArrayList<PersonBean>();

        persons.add(person1);

        persons.add(person2);
        jsonString = gson.toJson(persons);
        System.out.println("==2.jsonString=="+jsonString);
        // List<JavaBean>数据解析
        List<PersonBean> persons2 = gson.fromJson(jsonString, new TypeToken<List<PersonBean>>() {
        }.getType());
        System.out.println("==2.persons2=="+persons2);

        // List<String>数据
        List<String> list = new ArrayList<String>();

        list.add("gson1");

        list.add("gson2");

        list.add("gson3");
        jsonString = gson.toJson(list);
        System.out.println("==3.jsonString=="+jsonString);
        // List<String>数据解析
        List<String> list2 = gson.fromJson(jsonString, new TypeToken<List<String>>() {
        }.getType());
        System.out.println("==3.list2=="+list2);

        // List<Map<String,Object>>数据
        Map<String, Object> map = new HashMap<String, Object>();

        map.put("key1", "value1");

        map.put("key2", "value2");

        Map<String, Object> map2 = new HashMap<String, Object>();

        map2.put("key1", 1);

        map2.put("key2", 2);

        List<Map<String, Object>> listm = new ArrayList<Map<String, Object>>();

        listm.add(map);

        listm.add(map2);
        jsonString = gson.toJson(listm);
        System.out.println("==4.jsonString=="+jsonString);
        List<Map<String, Object>> listm2 = gson.fromJson(jsonString, new TypeToken<List<Map<String, Object>>>() {
        }.getType());
        System.out.println("==4.listm2=="+listm2);
    }
}

3。Fastjson aty

package com.louis.fastjsondemo;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // JavaBean数据
        PersonBean personBean = new PersonBean(1, "name1", "address1");
        String jsonString = JSON.toJSONString(personBean);
        System.out.println("louis==1.jsonString==" + jsonString);

        // JavaBean数据解析
        PersonBean person =JSON.parseObject(jsonString, PersonBean.class);
        System.out.println("louis==1.person=="+person);

        // List<JavaBean>数据
        PersonBean person1 = new PersonBean(1001, "香港", "刘德华");
        PersonBean person2 = new PersonBean(1002, "韩国", "宋慧乔");
        List<PersonBean> persons = new ArrayList<PersonBean>();
        persons.add(person1);
        persons.add(person2);
        jsonString = JSON.toJSONString(persons);
        System.out.println("louis==2.jsonString=="+jsonString);

        // List<String>数据
        List<String> list = new ArrayList<String>();
        list.add("fasjson1");
        list.add("fasjson2");
        list.add("fasjson3");
        jsonString =JSON.toJSONString(list);
        System.out.println("louis==3.jsonString=="+jsonString);

        // List<String>数据解析
        List<String> list2 = JSON.parseArray(jsonString, String.class);
        System.out.println("louis==3.list2=="+list2);

        // List<Map<String,Object>>数据
        Map<String, Object> map = new HashMap<String, Object>();

        map.put("key1", "value1");
        map.put("key2", "value2");

        Map<String, Object> map2 = new HashMap<String, Object>();

        map2.put("key1", 1);
        map2.put("key2", 2);

        List<Map<String, Object>> listm = new ArrayList<Map<String, Object>>();

        listm.add(map);
        listm.add(map2);

        jsonString = JSON.toJSONString(listm);
        System.out.println("louis==4.jsonString=="+jsonString);

        List<Map<String, Object>> listm2 = JSON.parseObject(jsonString, new TypeReference<List<Map<String,Object>>>(){});
        System.out.println("louis==4.listm2=="+listm2);
    }
}

from: http://www.voidcn.com/blog/RichieZhu/article/p-5038995.html
时间: 2024-10-26 16:12:53

Gson和Fastjson的相关文章

Gson 与 fastJson 在使用上的差异(fastJson的优点)

一.android 常用的json解析方式 Android 开发上常用的json解析方式有:Gson, fastJson,jackson. 因为jackjson jar包会比较大点(700+k),Gson和fastjson的功能又基本够用,所以一直没正式用过jackjson.自己有用的就是Gson和fastjson 二.基本使用方式 Gson //解成对象 Fromat mFromat = new Gson().fromJson(jsonStringObject, Fromat.class);

各个JSON技术的比较(Jackson,Gson,Fastjson)的对比

JSON技术的调研报告 一 .各个JSON技术的简介和优劣 1.json-lib json-lib最开始的也是应用最广泛的json解析工具,json-lib 不好的地方确实是依赖于很多第三方包, 包括commons-beanutils.jar,commons-collections-3.2.jar,commons-lang-2.6.jar,commons-logging-1.1.1.jar,ezmorph-1.0.6.jar, 对于复杂类型的转换,json-lib对于json转换成bean还有缺

Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例

Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例 继上篇json解析,我用了原生的json解析,但是在有些情况下我们不得不承认,一些优秀的json解析框架确实十分的好用,今天我们为了博客的保质保量,也就不分开写,我们直接拿比较火的Gson和Fast-json来使用,末尾在进行一些分析 Android JSON原生解析的几种思路,以号码归属地,笑话大全,天气预报为例演示 一.各有千秋 两大解析库的东家都是巨头,一个来自于Google官方,一个来自阿里巴巴,我们这

Gson与FastJson比较

一. 简介和优劣 1.Google的Gson Gson是目前功能最全的Json解析神器,Gson当初是为因应Google公司内部需求而由Google自行研发而来,但自从在2008年五月公开发布第一版后已被许多公司或用户应用.Gson的应用主要为toJson与fromJson两个转换函数,无依赖,不需要例外额外的jar,能够直接跑在JDK上. 而在使用这种对象转换之前需先创建好对象的类型以及其成员才能成功的将JSON字符串成功转换成相对应的对象. 类里面只要有get和set方法,Gson完全可以将

Android JSON 解析库的使用 - Gson 和 fast-json

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C.C++.C#.Java.JavaScript.Perl.Python等).这些特性使JSON成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成(网络传输速率). GSON是由谷歌官方推出的 JSON 与 Java 对象转化的 Java类库 fast-json 阿里推

Android JSON、GSON、FastJson的封装与解析

声明: 1.本帖只提供代码,不深入讲解原理.如果读者想要深入了解,那就不要在这个帖子上浪费时间了 2.客户端用的是Google官方的Volley访问服务器,具体了解Volley请戳 这里 3.本帖三种数据解析的DEMO都用到了下面这个Person类,贴出来: 1 public class Person { 2 private String name; 3 private int age; 4 private String address; 5 6 public Person() { 7 8 }

Json解析速度比较-Android API、Gson、Fastjson

IOS现成的API里的json解析速度非常快,这里就不说了,今天对比一下Android里面json的解析库. 首先第一个是Android API里面自带的json解析,其次是谷歌提供的Gson解析库(开源),其次是在网上看到的解析很快速的阿里巴巴分享的Fastjson包.Android自带的json解析大家一定都很熟悉了,这里不介绍了,这里详细说说谷歌提供的另一套解析库Gson: gson的使用方法非常的简单.只需要将需要解析的json字符串和对应的Bean类xing型传递给GSON类的from

Volley 结合GSON或FastJson用法

自定义GSON类 1 public class GsonRequest<T> extends Request<T> { 2 private final Gson mGson = new Gson(); 3 private final Class<T> mClazz; 4 private final Listener<T> mListener; 5 private final Map<String, String> mHeaders; 6 7 pu

Gson和Fastjson的使用

转载自:JSON技术的调研报告 一.Google的Gson包的使用简单介绍. Gson类:解析json的最基础的工具类 JsonParser类:解析器来解析JSON到JsonElements的解析树 JsonElement类:一个类代表的JSON元素 JsonObject类:JSON对象类型 JsonArray类:JsonObject数组 TypeToken类:用于创建type,比方泛型List (1)maven依赖 com.google.code.gson gson 2.3.1 开源地址 ht