码迷,mamicode.com
首页 > Web开发 > 详细

有趣Web之Json(四)---json与(Object/List/Map)相互转化

时间:2015-09-08 20:10:55      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

干web报名时间。通常,他们需要json转换为Object/list/map要么Object/List/map转换为json,由能够编写代码的简单包装非常多,以减轻负担。

本文将给出json的一系列的方法转换。 闲话不 讲。直接在代码:

首先Object /List /Map转化为Json

    /* 功能      :将一个对象转成json数组
     * 參数      :object对象
     * return    :json数组
     * */
	public String getJsonByJSONArrayFromObject(Object o) {
		JSONArray json = JSONArray.fromObject(o); 
		return json.toString();
	}
     /* 功能     :将一个对象转成json对象
     * 參数      :object对象
     * return    :json对象
     * */
	public String getJsonByBeanFromObject(Object o) {
		JSONObject jsonObj = JSONObject.fromObject(o);
		return jsonObj.toString();
	}

    /* 功能      :将一个List转成json数组
     * 參数      :对象list
     * return    :json数组
     * 返回的格式: [{"password":"1234","username":"cxl"}]
     * */
	public String getJsonByJSONArrayFromList(List list) {
		JSONArray json = JSONArray.fromObject(list); 
		return json.toString();
	}
     /* 功能                     :将一个List转成json对象
     * 參数                     :对象list
     * return    :json对象
     * */
	public String getJsonByJSONObjectFromList(List list) {
		JSONObject jsonObj = new JSONObject();
		for (int i = 0; i < list.size(); i++) {
			jsonObj.put(list.get(i).toString(), list.get(i));
		}
		return jsonObj.toString();
	}
    /* 功能      :将一个map转成json数组
     * 參数      :map
     * return    :json数组
     * */
	public String getJsonByJSONArrayFromMap(Map map) {
		JSONArray json = JSONArray.fromObject(map);
		return json.toString();
	}
    /* 功能      :将一个map转成json对象
     * 參数      :map
     * return    :json对象
     * */
	/*
	 * Map<String,Object> map = new HashMap<String,Object>(); map.put("users",
	 * users); map.put("u", u);
	 */
	public String getJsonByJSONObjectFromMap(Map map) {
		JSONObject json = JSONObject.fromObject(map);
		return json.toString();
	}

然后是json转化为其它类型

     /*
     * 功能    :将json对象(仅仅有一组值)转成object
     * 參数    :json字符串
     * return  : javabean 对象
     * 
     * */
	// {id:‘id1‘,code:‘code1‘,name:‘name1‘}
	public Object getBeantByJSONObjectFromJson(String json) {            
		JSONObject jsonObject = JSONObject.fromObject(json);
		Object  object=(Object)JSONObject.toBean(jsonObject);
		return object;
	}
    /*
     * 功能                 :将json转成map
     * 參数                 :json字符串
     * return  : map
     * */
	// {id:‘id1‘,code:‘code1‘,name:‘name1‘}
	public Map<String, Object> getMapByJson(String json) {
		Map<String, Object> map = new HashMap<String, Object>();
		// 最外层解析
		JSONObject object = JSONObject.fromObject(json);
		for (Object k : object.keySet()) {
			Object v = object.get(k);
			map.put(k.toString(), v);
		}
		return map;
	}
	 /*
     * 功能                 :将json转成list
     * 參数                 :json字符串
     * return  : list
     * */
	// [{id:‘id1‘,code:‘code1‘,name:‘name1‘},{id:‘id2‘,code:‘code2‘,name:‘name2‘}]
	public List getListByJSONArrayFromJson(String json) {        
		JSONArray array = JSONArray.fromObject(json);
		List list=(List)JSONArray.toList(array);
		return array;
	}



版权声明:本文博主原创文章,博客,未经同意不得转载。

有趣Web之Json(四)---json与(Object/List/Map)相互转化

标签:

原文地址:http://www.cnblogs.com/mengfanrong/p/4792686.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!