使用Gson解析json

Posted 贵梅之爱

tags:

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

前边的博客说过将json解析成java的方法,使用的是

技术分享

这几个jar包,但是在解析时层遇到一个问题,就是在将时间字符串转换为java的Timestamp对象时会抛出异常,这个问题一直放在哪里没有去解决,前两天突然想起来,就去网上找些解决方法,找了很长时间也没有一个完美的解决办法,不是看着复杂就是不能实现,最后我发现有人说用google的Gson解析json挺方便的,于是我就尝试用Gson解析json,试了一下果然挺好用的,问题很快就解决了。

这里就以一个简单的例子来说明下吧。

这是一个java Bean

 

package baz.javabean;

import java.sql.Timestamp;

public class Product {
	
	private String name;
	private int id;
	private Timestamp date;

	public Product() {
		// TODO Auto-generated constructor stub
	}

	public Product(String name, int id, Timestamp date) {
		super();
		this.name = name;
		this.id = id;
		this.date = date;
	}



	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Timestamp getDate() {
		return date;
	}

	public void setDate(Timestamp date) {
		this.date = date;
	}
	
}

 

 

下边是一个Test类

 

package baz.test;

import baz.javabean.Product;

import com.google.gson.Gson;

public class Test1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Gson gson = new Gson();//new一个Gson对象
		//json字符串
		String json = "{\"name\":\"guolicheng\",\"id\":123456,\"date\":\"2013-4-13 12:36:54\"}";
		//new 一个Product对象
		Product product = new Product();
		//将一个json字符串转换为java对象
		product = gson.fromJson(json, Product.class);
		//输出
		System.out.println("Name:" + product.getName());
		System.out.println("Id:" + product.getId());
		System.out.println("Date:" + product.getDate());
	}

}


输出结果为:

 

Name:guolicheng
Id:123456
Date:2013-04-13 12:36:54.0

 

看很简单吧。

使用到的jar包,可以到这里下载http://pan.baidu.com/share/link?shareid=440391&uk=3457081238

或者到官网下载

至于更深入些的介绍,请看下这几篇博客吧。

Gson使用 http://www.360doc.com/content/11/0309/16/1332348_99601000.shtml

Gson学习笔记http://www.360doc.com/content/11/0111/14/1332348_85735384.shtml

Json数据解析http://www.360doc.com/content/12/0903/10/7662927_233881217.shtml

Gson使用在android中的例子http://www.360doc.com/content/11/0815/14/7322578_140545909.shtml

以上是关于使用Gson解析json的主要内容,如果未能解决你的问题,请参考以下文章

使用 GSON 解析 JSON 数组

使用google-gson类库解析json文件

java怎么使用gson解析json字符串

RecyclerView未显示已解析的GSON数据

安卓怎么用gson解析服务端返回的复杂json数据

JSON 之GSON 解析