/**
* JSON数据解析
*
* @author cjc
* @date 2014-5-9 下午5:28:36
*/
public class JsonUtil {
private static ObjectMapper mapper = new ObjectMapper();
/**
* 把Java对象转换为JSON数据格式
*
* @param object
* @return
*/
public static String getJson(Object object) {
try {
Writer strWriter = new StringWriter();
mapper.writeValue(strWriter, object);
String dataJson = strWriter.toString();
return dataJson;
} catch (Exception e) {
}
return null;
}
/**
* 把JSON数据格式转换为JAVA对象
*
* @param <T>
* @param jsonData
* @param clz
* @return
*/
public static <T> T readValue(String jsonData, Class<T> clz) {
try {
return mapper.readValue(jsonData, clz);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
调用方法:
/**
* 下载数据
*
* @param values
*/
public static boolean insertNewsData(ContentValues values, Context context) {
if (CheckNetWork.isNetworkAvailable(context)
|| CheckNetWork.isWiFiActive(context)) {
String result = null;
result = RequestData.getData(NewsGlobal.NEWSURL);
if (result != null && !"".equals(result)) {
List<LinkedHashMap<String, Object>> nl = JsonUtil.readValue(
result, List.class);
if (nl != null) {
// 删除数据
NewsGetDataFromSQL.deleteNews(context);
for (LinkedHashMap<String, Object> map : nl) {
values.put("NewsID", (String) map.get("NewsID"));
NewsGetDataFromSQL.insertNews(context, values);
}
values.clear();
}
return true;
}
}
return false;
}
}