Gson的使用方法

26 篇文章 0 订阅

1.实体类

public class TaskPoliceBean implements Parcelable
{
	
	public int taskID;
	public String taskName;
	public String deliveryTime;
	public String taskContent;
	public String caseDetails;
	public String crimeAddr;
	public String alarmPeopleName;
	public String alarmPeoplePhone;
	public String taskFiles;
	
	public String taskEvaluation;
	public String alarmPeopleSex;
	public String taskType;
	public String associationPlanNum;
	public String policeInfoID;
	public String taskStatus;
	public String taskSequence;
	public String deliveryPeople;
	public int id;
	public TaskPoliceBean()
	{
		
	}
	public void setTaskStatus(String newState) {
		this.taskStatus=newState;
		
	}
	@Override
	public int describeContents() {
		return 0;
	}
	@Override
	public void writeToParcel(Parcel dest, int flags) {
		dest.writeInt(taskID);
		dest.writeString(taskName);
		dest.writeString(deliveryTime);
		dest.writeString(taskContent);
		dest.writeString(caseDetails);
		dest.writeString(crimeAddr);
		dest.writeString(alarmPeopleName);
		dest.writeString(alarmPeoplePhone);
		dest.writeString(taskFiles);
	}
	 public static final Parcelable.Creator<TaskPoliceBean> CREATOR
	 	= new Parcelable.Creator<TaskPoliceBean>() {
		 public TaskPoliceBean createFromParcel(Parcel in) {
		     return new TaskPoliceBean(in);
		 }
		
		 public TaskPoliceBean[] newArray(int size) {
		     return new TaskPoliceBean[size];
		 }
	};
	private TaskPoliceBean(Parcel in) {
		taskID=in.readInt();
		taskName=in.readString();
		deliveryTime=in.readString();
		taskContent=in.readString();
		caseDetails=in.readString();
		crimeAddr=in.readString();
		alarmPeopleName=in.readString();
		alarmPeoplePhone=in.readString();
		taskFiles=in.readString();
	}
}
public class TaskPoliceList {
	public TaskPoliceBean taskPoliceBean;
	public TaskPolicemanInfos[] taskPolicemanInfos;
}
public class TaskPolicemanInfos {

	public String isHead;
	public String policemanID;
	public String policeMobile;
	public String seq;
	public String policemanName;
	public String isReceived;
	public String taskID;
}

2.用法

Gson gson = new Gson();
		TaskResult taskResult = gson.fromJson(jsonString, TaskResult.class);
		int resultCode = taskResult.resultCode;
		if (resultCode == 0) {
			final TaskPoliceList[] taskPoliceLists = taskResult.taskPoliceList;
			synchronized (this) {
				for (int i = 0; i < taskPoliceLists.length; i++) {
					final TaskPoliceBean taskPoliceBean = taskPoliceLists[i].taskPoliceBean;
					if (!MyDBUtil.hasTaskByTaskID(taskPoliceBean.taskID)) {
						RequestParams params = new RequestParams();
						params.put(NetConstant.POLICE_TASK_ID, taskPoliceBean.taskID);
						params.put(NetConstant.TASK_STATUS, StatusConstant.READY_RECEIVE);
						params.put(NetConstant.PHONE_NUM, SPUtil.getString(getBaseContext(), SPConstant.LOGEDTEL));
						NetUtil.getDefault().get(URLUtil.getURL(this, NetConstant.ACTION_MODIFY_TASK_STATUS), params,
								new TextHttpResponseHandler() {
									@Override
									public void onSuccess(int arg0, Header[] arg1, String arg2) {
										int indexOf = arg2.indexOf(":");
										String resultCode = arg2.substring(indexOf + 1, indexOf + 2);
										if (resultCode.equals(AppConstant.SUCCESS)) {
											LogUtil.i("更改状态成功");
											MyDBUtil.saveTaskPoliceBean(taskPoliceBean);
											successTask++;
											sendEventBus(taskPoliceLists.length);
										} else {
											failTask++;
											sendEventBus(taskPoliceLists.length);
										}
										if (failTask + successTask == taskPoliceLists.length)
											requestSend = false;
									}

									@Override
									public void onFailure(int arg0, Header[] arg1, String arg2, Throwable arg3) {
										LogUtil.i("更改状态失败");
										failTask++;
										if (failTask + successTask == taskPoliceLists.length)
											requestSend = false;
										sendEventBus(taskPoliceLists.length);
									}
								});
					}
				}
				count = taskPoliceLists.length;
			}
		} else {
			requestSend = false;
		}




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值