json转换为java对象

json数组格式 [{},{}] 转换
List<LinkedHashMap<String, Object>> list = JacksonUtil.toBean(jsonString, List.class);
取得一个LinkedHashMap
LinkedHashMap<String, Object> map = new LinkedHashMap<String, Object>();
map = list.get(i);
取得map中的内容
map.get("name").toString()


//添加请求参数 post方式传递
HashMap paramMap=new HashMap();
paramMap.put("tag", "8");
...
String jsonString = "";
Http4ResultObject jsonObj = HttpUtils4.getPostResponses(commurl, "UTF-8", paramMap);
if (jsonObj.getStatusCode()==200) {
try {
jsonString = new String(jsonObj.getResult(),"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//取得返回内容
Map<Object, Object> mmMap = (Map<Object, Object>)JacksonUtil.toMap(jsonString);
Map<Object, Object> senskyUserMap =(Map<Object, Object>)(mmMap.get("senskyUser"));
result=Integer.parseInt(senskyUserMap.get("userId").toString());
}
return result;




public class JacksonUtil {
public static String toJson(Object obj) {
ObjectMapper mapper = new ObjectMapper();
StringWriter writer = new StringWriter();
try {
mapper.writeValue(writer, obj);
} catch (JsonGenerationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return writer.toString();
}

public static <T> T toBean(String str, Class<T> c) {
ObjectMapper mapper = new ObjectMapper();
T t = null;
try {
t = mapper.readValue(str, c);
} catch (JsonParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return t;
}

public static Map<?, ?> toMap(String data) {
Map<?, ?> map = null;
if (data == null) {
return map;
}
ObjectMapper mapper = new ObjectMapper();
try {
map = mapper.readValue(data, Map.class);
} catch (JsonParseException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return map;
}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值