用fastjson架構解析Json資料工具類
在Android應用開發中,APP端與伺服器互動的資料通常是json格式的資料,那麼為了方便操作,我們一般會用json解析架構來協助我們進行資料操作。常用的有Gjson和fastjson架構。在項目中用到了fastjson解析資料,當然前提是要準備要相應的jar包工具,把工具類(主要是json資料與實體bean之間的轉換操作)貼出來方便以後使用:
public class FastJsonTools {
/**
* 用fastjson 將json字串解析為一個 JavaBean
*
* @param jsonString
* @param cls
* @return
*/
public static T getJson(String jsonString, Class cls) {
T t = null;
try {
t = JSON.parseObject(jsonString, cls);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return t;
}
/**
* 用fastjson 將json字串 解析成為一個 List 及 List
*
* @param jsonString
* @param cls
* @return
*/
public static List getArrayJson(String jsonString, Class cls) {
List list = new ArrayList();
try {
list = JSON.parseArray(jsonString, cls);
} catch (Exception e) {
// TODO: handle exception
}
return list;
}
/**
* 用fastjson 將json字串 解析成為一個 List 及 List
*
* @param jsonString
* @param cls
* @return
*/
@SuppressWarnings("unchecked")
public static List getArrayJson(String jsonString) {
List list = new ArrayList();
try {
list = (List) JSON.parseArray(jsonString);
} catch (Exception e) {
// TODO: handle exception
}
return list;
}
/**
* 用fastjson 將jsonString 解析成 List>
*
* @param jsonString
* @return
*/
public static List> getListMap(String jsonString) {
List> list = new ArrayList>();
try {
// 兩種寫法
// list = JSON.parseObject(jsonString, new
// TypeReference>>(){}.getType());
list = JSON.parseObject(jsonString, new TypeReference>>() {
});
} catch (Exception e) {
// TODO: handle exception
}
return list;
}
}