Fastjson简介和基本使用

Fastjson是一个性能很好的Java语言实现的Json解析器和生成器,由来自阿里巴巴的工程师开发。具有极快的性能,超越任何其他的Java Json Parser。

特点: 1、快速(比其他任何基于Java的解析器和生成器更快,包括Jackson)

     2、强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Data或enum)

             3、零依赖(没有依赖其他任何类库,除JDK)

     4、支持注解、支持全类型序列化

基本使用方法:

1、创建android工程,引入fastjson-1.2.5.jar(可以在这里下载)

2、在AndroidManifest.xml添加网络权限:

<uses-permission android:name="android.permission.INTERNET"/>

3、创建实体类:

Book类:

package com.example.bean;

import java.util.ArrayList;

public class Book
{
	private String title;//标题
	private String publisher;//出版社
	private String summary;//概要
	private ArrayList<Tag> tags;
	
	public String getTitle()
	{
		return title;
	}
	public void setTitle(String title)
	{
		this.title = title;
	}
	public String getPublisher()
	{
		return publisher;
	}
	public void setPublisher(String publisher)
	{
		this.publisher = publisher;
	}
	public String getSummary()
	{
		return summary;
	}
	public void setSummary(String summary)
	{
		this.summary = summary;
	}
	public ArrayList<Tag> getTags()
	{
		return tags;
	}
	public void setTags(ArrayList<Tag> tags)
	{
		this.tags = tags;
	}
	
}
实体类Tag:

package com.example.bean;

public class Tag
{
	private String count;
	private String name;
	private String title;
	
	public String getCount()
	{
		return count;
	}
	public void setCount(String count)
	{
		this.count = count;
	}
	public String getName()
	{
		return name;
	}
	public void setName(String name)
	{
		this.name = name;
	}
	public String getTitle()
	{
		return title;
	}
	public void setTitle(String title)
	{
		this.title = title;
	}
	
}

4、网络请求数据和解析Json:
package com.example.gsondemo;

import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.widget.Toast;

import com.alibaba.fastjson.JSON;
import com.android.volley.Response.ErrorListener;
import com.android.volley.Response.Listener;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import com.example.bean.Book;

public class MainActivity extends ActionBarActivity
{
	//请求接口
	private String url = "https://api.douban.com/v2/book/1220562";

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

	/**
	 * 获取网络数据
	 */
	private void getData()
	{
		//创建请求对象
		StringRequest request = new StringRequest(url, new Listener<String>() {

			@Override
			public void onResponse(String response)
			{
				Log.e("info", response);
				dealData(response);
			}
		}, new ErrorListener() {

			@Override
			public void onErrorResponse(VolleyError error)
			{
				Toast.makeText(MainActivity.this, "网络请求出错", Toast.LENGTH_SHORT).show();
			}
		});
		//把请求对象加入请求队列里面
		new Volley().newRequestQueue(getApplicationContext()).add(request);
	}
	
	/**
	 * 进行fastjson解析
	 * @param result
	 */
	public void dealData(String result){
		//把json字符串转化为实例对象
		Book book = JSON.parseObject(result, Book.class);
		Toast.makeText(MainActivity.this, "标题:" + book.getTitle() + "  出版社:" + book.getPublisher()
				+ "   Tag:" + book.getTags().size(), 1).show();
	}
}





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值