Android/Java 使用Gson解释Json数据

我相信大家一定听过Gson或者去了解过Gson,所以在这就不说Gson是干什么的了。但应该还是人没去用过,之前我在网上看一些文章,感觉文章的作者复杂化了,看的我晕晕的。后来,自己动手去试了一下,很简单。下面以一个简单的例子说明,估计大家看了都懂了。


(PS:不知道怎么插入代码片段)


//信息类,所有的属性一定都要set/get方法

public class Info {


private String username;//用户名

private String realName;//真实姓名

private String unitId;//...

private String mobile;//...

private String officeLine;//...

private String officeFax;//...

private String qq;//...

private String email;//...

private String remark;//...

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

public String getRealName() {

return realName;

}

public void setRealName(String realName) {

this.realName = realName;

}

public String getUnitId() {

return unitId;

}

public void setUnitId(String unitId) {

this.unitId = unitId;

}

public String getMobile() {

return mobile;

}

public void setMobile(String mobile) {

this.mobile = mobile;

}

public String getOfficeLine() {

return officeLine;

}

public void setOfficeLine(String officeLine) {

this.officeLine = officeLine;

}

public String getOfficeFax() {

return officeFax;

}

public void setOfficeFax(String officeFax) {

this.officeFax = officeFax;

}

public String getQq() {

return qq;

}

public void setQq(String qq) {

this.qq = qq;

}

public String getEmail() {

return email;

}

public void setEmail(String email) {

this.email = email;

}

public String getRemark() {

return remark;

}

public void setRemark(String remark) {

this.remark = remark;

}

}



//用户信息,除了个人信息,可能还包括一些其它信息。

import java.util.List;


public class UserInfo {


private String token;

private Info info;

//这里特别加了个数组,以说明Json数据里如果有数据组,怎么解释

//设置有list就行了。

private List<Info> infos;

public List<Info> getInfos() {

return infos;

}

public void setInfos(List<Info> infos) {

this.infos = infos;

}

public String getToken() {

return token;

}

public void setToken(String token) {

this.token = token;

}

public Info getInfo() {

return info;

}

public void setInfo(Info info) {

this.info = info;

}

}




//主函数
import java.util.ArrayList;
import java.util.List;


import com.google.gson.Gson;


public class GsonDemo {


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

UserInfo user = new UserInfo();//初始化

//以下是为实体类里每个属性赋值
user.setToken("hhhhhhh");

Info info = new Info();
info.setEmail("ddd");
info.setMobile("2222");
info.setOfficeFax("3333");
info.setOfficeLine("4444");
info.setQq("3333");
info.setRealName("dddd");
info.setRemark("3333");
info.setUnitId("3333");
info.setUsername("7777");

user.setInfo(info);
List<Info> infos = new ArrayList<Info>();
infos.add(info);
infos.add(info);
user.setInfos(infos);

Gson gson = new Gson();

String json = gson.toJson(user);//把上面初始化的实体类转成Json字符串
System.out.println(json);

UserInfo u = gson.fromJson(json, UserInfo.class);//把Json字符串转成实体类,实体类里,已经包含信息
System.out.println(u.getInfo().getUsername());


}


}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值