FastJsonUtils

package com.zq;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

import java.math.BigDecimal;
import java.util.ArrayList;

/**
* Created by zq 2016/2/4.
*/
public class JsonUtility {

/***
 * 解析为字符串
 *
 * @param jsonString
 * @param key
 * @return
 */
public static String fromString(String jsonString, String key) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            return jsonObject.getString(key);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 解析为布尔
 *
 * @param jsonString
 * @param key
 * @return
 */
public static Boolean formBoolean(String jsonString, String key) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            return jsonObject.getBoolean(key);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}
/***
 * 解析为String
 *
 * @param jsonString
 * @param key
 * @return
 */
public static String formString(String jsonString, String key, String skey) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            JSONObject jsonObject1 = jsonObject.getJSONObject(key);
            String jsonObject2 = jsonObject1.getString(skey);
            return jsonObject2;
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 解析为Int
 *
 * @param jsonString
 * @param key
 * @return
 */
public static int formInt(String jsonString, String key, String skey) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            JSONObject jsonObject1 = jsonObject.getJSONObject(key);
            int jsonObject2 = jsonObject1.getInteger(skey);
            return jsonObject2;
        } else {
            return -1;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return -1;
    }
}

/***
 * 解析为数字
 *
 * @param jsonString
 * @param key
 * @return
 */
public static Integer formInteger(String jsonString, String key) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            return jsonObject.getInteger(key);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 解析为长位十进制数
 *
 * @param jsonString
 * @param key
 * @return
 */
public static BigDecimal formBigDecimal(String jsonString, String key) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            return jsonObject.getBigDecimal(key);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 解析为双精度
 *
 * @param jsonString
 * @param key
 * @return
 */
public static Double formDouble(String jsonString, String key) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            return jsonObject.getDouble(key);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 解析为浮点数
 *
 * @param jsonString
 * @param key
 * @return
 */
public static Float formFloat(String jsonString, String key) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            JSONObject jsonObject = JSONObject.parseObject(jsonString);
            return jsonObject.getFloat(key);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 解析为对象
 *
 * @param jsonString
 * @param key
 * @param t
 * @param <T>
 * @return
 */
public static <T> T fromBean(String jsonString, String key, Class<T> t) {
    if (jsonString != null) {
        try {
            JSONObject jsonObj = JSONObject.parseObject(jsonString);
            return JSONObject.toJavaObject(jsonObj.getJSONObject(key), t);
        } catch (Exception e) {
            return null;
        }
    } else {
        return null;
    }
}

/***
 * 解析为列表
 *
 * @param jsonString
 * @param key
 * @param t
 * @param <T>
 * @return
 */
public static <T> ArrayList<T> fromList(String jsonString, String key, Class<T> t) {
    ArrayList<T> list = new ArrayList<T>();
    if (jsonString != null && jsonString.length() > 0) {
        try {
            JSONObject jsonObj = JSONObject.parseObject(jsonString);
            JSONArray inforArray = jsonObj.getJSONArray(key);
            for (int index = 0; index < inforArray.size(); index++) {
                list.add(JSONObject.toJavaObject(
                        inforArray.getJSONObject(index), t));
            }
        } catch (Exception e) {
        }
    }
    return list;
}

/***
 * 直接解析为bean
 *
 * @param jsonString
 * @param t
 * @param <T>
 * @return
 */
public static <T> T fromBean(String jsonString, Class<T> t) {
    try {
        if (jsonString != null && jsonString.length() > 0) {
            return JSON.parseObject(jsonString, t);
        } else {
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/***
 * 直接解析为list
 *
 * @param jsonString
 * @param t
 * @param <T>
 * @return
 */
public static <T> ArrayList<T> fromList(String jsonString, Class<T> t) {
    ArrayList<T> list = null;
    try {
        list = new ArrayList<>();
        if (jsonString != null && jsonString.length() > 0) {
            list.addAll(JSON.parseArray(jsonString, t));
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return list;
}


/***
 * 将列表转换为json
 *
 * @param listBean
 * @return
 */
public static <T> String ArrayToJson(ArrayList<T> listBean) {
    String jsonString = JSON.toJSONString(listBean);
    return jsonString;
}

/***
 * 将类转为json
 *
 * @param <T>
 * @return
 */
public static <T> String BeanToJson(Object obj) {
    String jsonsString = JSON.toJSONString(obj);
    return jsonsString;
}

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骑着巨人找巨人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值