json解析例子

 jackson解析json

	/**
	 * jackson 解析转换json为对象
	 * {"id":1,"name":"小强"}
	 *@param jsonString 
	 *@param clazz 实体类型
	 *@return
	 *@comment
	 */
	public static Object getObjectFromJsonByjac(String jsonString, Class<?> clazz) {
		ObjectMapper objectMapper = new ObjectMapper();
		try {
			return objectMapper.readValue(jsonString, clazz);
		} catch (JsonParseException e) {
			e.printStackTrace();
		} catch (JsonMappingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return null;
	}
	/**
	  * jackson 解析转换json数组为List对象
	 * [{"id":1,"name":"小强"},{"id":2,"name":"中强"},{"id":3,"name":"大强"}]
	  *@param jsonString
	  *@param clazz
	  *@return
	  *@comment
	  */
	 @SuppressWarnings("unchecked")
	public static List<LinkedHashMap<String, Object>> getListFromJsonByJack(String jsonString, Class<?> clazz) {
		 ObjectMapper objectMapper = new ObjectMapper();
	  try {
	   List<LinkedHashMap<String, Object>> list = objectMapper.readValue(
			   jsonString, List.class);
	   System.out.println(list.size());
	   for (int i = 0; i < list.size(); i++) {
	    Map<String, Object> map = list.get(i);
	    Set<String> set = map.keySet();
	    for (Iterator<String> it = set.iterator(); it.hasNext();) {
	     String key = it.next();
	     System.out.println(key + ":" + map.get(key));
	    }
	   }
	   return list;
	  } catch (JsonParseException e) {
	   e.printStackTrace();
	  } catch (JsonMappingException e) {
	   e.printStackTrace();
	  } catch (IOException e) {
	   e.printStackTrace();
	  }
	  return null;
	 }


json-lib 解析json为对象

	/**
	 * json-lib 解析转换json为对象
	 * {"id":1,"name":"小强"}
	 *@param jsonString
	 *@param clazz
	 *@return
	 *@comment
	 */
	public static Object getObjectFromJsonBylib(String jsonString, Class<?> clazz) {
		JSONObject obj = JSONObject.fromObject(jsonString);
		return JSONObject.toBean(obj, clazz);
	}
	/**
	 * json-lib 解析转换json数组为List对象
	 * [{"id":1,"name":"小强"},{"id":2,"name":"中强"},{"id":3,"name":"大强"}]
	 *@param jsonString
	 *@param clazz
	 *@return
	 *@comment
	 */
	public static List<Object> getListFromJsonByLib(String jsonString, Class<?> clazz) {
		JSONArray array = JSONArray.fromObject(jsonString);
		List<Object> list = new ArrayList<Object>();
		for (Iterator<?> iter = array.iterator(); iter.hasNext();) {
			JSONObject obj = (JSONObject)iter.next();
			list.add(JSONObject.toBean(obj, clazz));
		}
		return list;
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值