您的位置:首页 > Web前端 > JavaScript

fastjson封装

2016-05-11 19:53 615 查看
不少项目中用到阿里的fastjson.jar去解析或者组装json,当转换错误或者解析异常(fastjson.jar在序列号对象时候,会偶现的报异常),所以使用前最后自己封装一层,加上异常的补获,防止第三方jar包的异常导致自身应用crash。

封装代码如下:

package com.focustech.android.mt.parent.util;

import android.util.Log;

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

import java.util.List;

/**
* Created by caoyinfei on 2016/4/27.
*/
public class JsonHelper {
/**
* 把json string 转化成类对象
*
* @param str
* @param t
* @return
*/
public static <T> T parseObject(String str, Class<T> t) {
try {
if (str != null && !"".equals(str.trim())) {
T res = JSONArray.parseObject(str.trim(), t);
return res;
}
} catch (Exception e) {
Log.e("数据转换出错", "exception:" + e.getMessage());
}
return null;
}

/**
* 把json string 转化成类对象
*
* @param str
* @param t
* @return
*/
public static <T> List<T> parseArray(String str, Class<T> t) {
try {
if (str != null && !"".equals(str.trim())) {
List<T> res = JSONArray.parseArray(str.trim(), t);
return res;
}
} catch (Exception e) {
Log.e("数据转换出错", "exception:" + e.getMessage());
}
return null;
}

/**
* 把类对象转化成json string
*
* @param t
* @return
*/
public static <T> String toJson(T t) {
try {
return JSONObject.toJSONString(t);
} catch (Exception e) {
Log.e("数据转换出错", "exception:" + e.getMessage());
}
return "";
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: