JSONObject对象的解析

列子如下:

package com.gbt.utils;

import java.util.ArrayList;
import java.util.List;

import com.gbt.model.Accesstoken;
import com.gbt.model.ResponseBoxMessage;
import com.gbt.model.SubmitResultReturn;
import com.gbt.model.TaskPageFileTask;
import com.gbt.model.TaskResultMessage;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JsonUtil {
    @SuppressWarnings("rawtypes")
    public static Object jsonString2Object(String jsonString, Class pojoCalss) {

        Object pojo;

        JSONObject jsonObject = JSONObject.fromObject(jsonString);

        pojo = JSONObject.toBean(jsonObject, pojoCalss);

        return pojo;

    }

    public static String object2JsonString(Object javaObj) {

        JSONObject json;

        json = JSONObject.fromObject(javaObj);

        return json.toString();

    }

    @SuppressWarnings({ "rawtypes", "unchecked" })
    public static List jsonList2JavaList(String jsonString, Class pojoClass) {

        JSONArray jsonArray = JSONArray.fromObject(jsonString);

        JSONObject jsonObject;

        Object pojoValue;

        List list = new ArrayList();

        for (int i = 0; i < jsonArray.size(); i++) {

            jsonObject = jsonArray.getJSONObject(i);

            pojoValue = JSONObject.toBean(jsonObject, pojoClass);

            list.add(pojoValue);

        }

        return list;

    }

    /**
     * 获取AccessToken对象
     * 
     * @param jsonString
     * @return
     */
    public static Accesstoken getAccessToken(String jsonString) {
        Accesstoken token = new Accesstoken();
        JSONObject item = JSONObject.fromObject(jsonString);
        token.setAccesstoken(item.getString("access_token"));
        token.setExpiresin(item.getString("expires_in"));
        token.setStatus(item.getString("status"));
        token.setInfo(item.getString("info"));
        return token;
    }

    /**
     * 返回ResponseBoxMessage箱子信息
     * 
     * @param jsonString
     * @return
     */
    public static List<ResponseBoxMessage> getResponseBoxMessage(
            String jsonString) {

        List<ResponseBoxMessage> boxlist = new ArrayList<ResponseBoxMessage>();
        JSONArray array = JSONArray.fromObject(jsonString);
        for (int i = 0; i < array.size(); i++) {
            ResponseBoxMessage box = new ResponseBoxMessage();
            // 获取各个属性的值
            JSONObject item = array.getJSONObject(i);
            box.setTaskNo(item.getString("taskNo"));
            box.setTaskType(item.getString("taskType"));
            box.setTaskTime(item.getString("taskTime"));
            box.setTaskTimeLimit(item.getInt("taskTimeLimit"));
            box.setCabinetNo(item.getString("cabinetNo"));
            box.setBoxType(item.getString("boxType"));
            box.setBoxNo(item.getInt("boxNo"));
            box.setLatticeNo(item.getString("latticeNo"));
            box.setCardNo(item.getString("cardNo"));
            box.setFileNos(item.getString("fileNos"));
            box.setStatus(item.getInt("status"));
            box.setInfo(item.getString("info"));
            boxlist.add(box);
        }

        return boxlist;
    }

    /**
     * 返回执行消息
     * @param jsonString
     * @return
     */
    public static TaskResultMessage getTaskResultMessage(String jsonString) {
        TaskResultMessage task = new TaskResultMessage();
        JSONObject item = JSONObject.fromObject(jsonString);
        task.setTaskNo(item.getString("taskNo"));
        task.setTaskType(item.getString("taskType"));
        task.setTaskResult(item.getString("taskResult"));
        task.setTaskTime(item.getString("taskTime"));
        task.setCabinetNo(item.getString("cabinetNo"));
        task.setBoxType(item.getString("boxType"));
        task.setBoxNo(item.getInt("boxNo"));
        task.setLatticeNo(item.getString("latticeNo"));
        task.setCardNo(item.getString("cardNo"));
        task.setFileNos(item.getString("fileNos"));
        task.setStatus(item.getInt("status"));
        task.setInfo(item.getString("info"));
        return task;
    }

    /***
     * 
     * @param jsonString
     * @return
     */
    @SuppressWarnings("unchecked")
    public static TaskPageFileTask getTaskPageFileTask(String jsonString){

        TaskPageFileTask filetask = new TaskPageFileTask();
        JSONObject item = JSONObject.fromObject(jsonString);
        filetask.setCurrentPage(item.getString("currentPage"));
        filetask.setPageSize(item.getString("pageSize"));
        filetask.setTotalSize(item.getString("totalSize"));
        filetask.setAccess_token(item.getString("access_token"));
        filetask.setFileTasks(item.getJSONArray("fileTasks"));
        filetask.setStatus(item.getString("status"));
        filetask.setInfo(item.getString("info"));
        return filetask;

    }

    /**
     * 提交任务返回结果
     * @param jsonString
     * @return
     */
    public static SubmitResultReturn getSubmitResultReturn(String jsonString){

        SubmitResultReturn sub = new SubmitResultReturn();
        JSONObject item = JSONObject.fromObject(jsonString);
        sub.setAccesstoken(item.getString("access_token"));
        sub.setStatus(item.getString("status"));
        sub.setInfo(item.getString("info"));
        return sub;

    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值