1

package com.ppmoney.g2.mapper;

import com.google.common.reflect.TypeToken;
import com.google.gson.Gson;
import com.google.gson.JsonSyntaxException; import java.lang.reflect.Type; public class JsonHelper { public static void main(String[] args) {
String respStr = "{\"status\":0,\"msg\":\"\",\"data\":{\"cardNo\":\"23543456345\"}}";
BaseResponse<CardInfo> cardInfo = parseResponse(respStr);
System.out.println(cardInfo.data);
respStr = "{\"status\":0,\"msg\":\"\",\"data\":{\"id\":\"23543456345\",\"name\":\"张三\"}}";
BaseResponse<UserInfo> userInfo = parseResponse(respStr);
System.out.println(userInfo.data);
} private static <T> BaseResponse<T> parseResponse(String responseData) throws JsonSyntaxException { Gson gson = new Gson();
Type jsonType = new TypeToken<BaseResponse<T>>() {
}.getType();
BaseResponse<T> result = gson.fromJson(responseData, jsonType); return result;
} class BaseResponse<T> { private int status; public int getStatus() {
return status;
} public void setStatus(int status) {
this.status = status;
} public String getMsg() {
return msg;
} public void setMsg(String msg) {
this.msg = msg;
} public T getData() {
return data;
} public void setData(T data) {
this.data = data;
} private String msg; private T data; } class UserInfo {
private String name; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} @Override
public String toString() {
return "UserInfo{" +
"name='" + name + '\'' +
", Id='" + Id + '\'' +
'}';
} public String getId() {
return Id;
} public void setId(String id) {
Id = id;
} private String Id;
} class CardInfo {
public String getCardNo() {
return cardNo;
} public void setCardNo(String cardNo) {
this.cardNo = cardNo;
} @Override
public String toString() {
return "CardInfo{" +
"cardNo='" + cardNo + '\'' +
'}';
} private String cardNo;
}
}

最新文章

  1. mssql 2008 游标 临时表 作业批处理失败问题
  2. Java实现本地 fileCopy
  3. HDU1899 Sum the K-th&#39;s(树状数组)
  4. td也可以溢出隐藏显示
  5. 用telnet和php的curl库测试http
  6. CSS六大选择器(注释css表里不能加注释!!)
  7. 乱译文档--开始使用Musca
  8. web前端如何让网页布局稳定性和标准性?
  9. Alpha冲刺No.10
  10. Git常用命令解说
  11. sonar 匿名内部类写法不推荐
  12. 金蝶K/3 固定置产相关SQL语句
  13. Docker docker-compose安装
  14. PB的一些记录
  15. 【Topcoder 10384】KingdomMap
  16. Spring之配置文件bean作用域的详细介绍
  17. Django中的Templates
  18. The type android.support.v4.view.ScrollingView cannot be resolved. It is indirectly referenced from
  19. python学习 day19 configparser模块 os模块 subprocess模块
  20. 【Cesium】天空盒子

热门文章

  1. c# 判断网络地址是否存在
  2. linux内核被加载的过程
  3. IntelliJ IDEA——利用maven插件构建web工程
  4. 浅谈android代码保护技术_加固
  5. datebox 和 datetimebox 添加『清空』按钮
  6. vs2012 许可 tfs 许可
  7. [Lua快速了解一下]Lua的控制语句
  8. 树形DP-----HDU4003 Find Metal Mineral
  9. Android Studio2.3更换默认的ConstraintLayout布局
  10. IE11下使用fixed定位时鼠标滚动不平滑