Gson的基础应用

来源:互联网 发布:第三方数据监测公司 mt 编辑:程序博客网 时间:2024/06/01 09:34

最近要做一个安卓客户端,需要与服务器进行交互,要用到json,可是本人对json不熟悉,经人介绍,说谷歌的gson使用更便捷,于是就去了解了下。经过比较,gson和其他现有java json类库最大的不同时gson需要序列化得实体类不需要使用annotation来标识需要序列化得字段,同时gson又可以通过使用annotation来灵活配置需要序列化的字段。

下面是一个小小的例子:

Person实体:

public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}

}

Gson提供了toGson()的方法,将对象装换成Json字符串

eg:

Gson gson =new Gson();
List
<Person> persons =new ArrayList<Person>();
for (int i =0; i<10; i++) {
Person p
=new Person();
p.setName(
"name"+ i);
p.setAge(i
*5);
persons.add(p);
}
String str
= gson.toJson(persons);

效果如下:[{"name":"name0","age":0},{"name":"name1","age":5},{"name":"name2","age":10},{"name":"name3","age":15},{"name":"name4","age":20},{"name":"name5","age":25},{"name":"name6","age":30},{"name":"name7","age":35},{"name":"name8","age":40},{"name":"name9","age":45}]


Gson提供了fromJson()方法来实现从Json相关对象到java实体的方法。

eg:

Person person = gson.fromJson(str, Person.class);


Gson的基本使用就是这么多,至于annotation方面可以参考gson的官方文档,希望能对初学java和gson的同学有所帮助。


0 0
原创粉丝点击