利用gson对json格式数据序列化与反序列化

不废话,直接上代码

//主函数

public static void main(String[] args)
{
 //list新类型 对象
 Gson gson = new Gson();
 List<User> persons = new ArrayList<User>();
 for (int i = 0; i < 10; i++) {
  User p = new User();
      p.setName("name" + i);
      p.setSex("男");
      p.setAge(i+"");
      persons.add(p);
 }
 String str = gson.toJson(persons);

 List<User> ps = gson.fromJson(str, new TypeToken<List<User>>(){}.getType());
 for(int i = 0; i < ps.size() ; i++)
 {
  User p = ps.get(i);
      System.out.println(p.getName()+" "+p.getAge());
 }

 //单个对象
  Gson tmpgson = new Gson(); // Or use new GsonBuilder().create();
  User mUser = new User();
  mUser.setName("tt");
  mUser.setSex("男");
  String json = tmpgson.toJson(mUser); // serializes user to Json
  User mUser2 = tmpgson.fromJson(json, User.class); // deserializes json into user
  System.out.println(mUser2.getName()+" "+mUser2.getSex() );
}

 

用户类

public class User
{
 /**
  * @return the age
  */
 public String getAge()
 {
  return age;
 }
 /**
  * @param age the age to set
  */
 public void setAge(String age)
 {
  this.age = age;
 }
/**
  * @return the name
  */
 public String getName()
 {
  return name;
 }
 /**
  * @param name the name to set
  */
 public void setName(String name)
 {
  this.name = name;
 }
 /**
  * @return the sex
  */
 public String getSex()
 {
  return sex;
 }
 /**
  * @param sex the sex to set
  */
 public void setSex(String sex)
 {
  this.sex = sex;
 }

private String name;
private String sex;
private String age;
}

 

Gson API官方地址

http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/index.html

你可能感兴趣的:(json,gson,数据传输格式)