JsonUtil

package com.szibr.workbench.common.util;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;

public class JsonUtil {
	
	@SuppressWarnings("unchecked")
	public static String format(List data, int rows) throws Exception {
		if ((data == null) || (data.isEmpty())) {
			return "";
		}
		return "{ \"total\":" + rows + ",\"rows\":" + fromObject(data) + "}";
	}

	@SuppressWarnings("unchecked")
	public static String format(List data, Long rows) throws Exception {
		if ((data == null) || (data.isEmpty())) {
			return "";
		}

		return "{ \"total\":" + rows + ",\"rows\":" + fromObject(data) + "}";
	}

	@SuppressWarnings("unchecked")
	public static String fromObject(Object object) throws Exception {
		String jsonString = null;
		JsonConfig jsonConfig = new JsonConfig();
		jsonConfig.registerJsonValueProcessor(Date.class,
				new JsonDateValueProcessor());
		if (object != null) {
			if (((object instanceof Collection))
					|| ((object instanceof Object[]))){
				jsonString = JSONArray.fromObject(object, jsonConfig).toString();
				System.out.println(JSONArray.fromObject(object, jsonConfig));
			}
			else {
				jsonString = JSONObject.fromObject(object, jsonConfig)
						.toString();
			}
		}
		return jsonString == null ? "{}" : jsonString;
	}
	
	public static void main(String[] args) {
		try {
			List list = new ArrayList();
			Map map1 = new HashMap();
			map1.put("id", "01");
			map1.put("pId", "cc");
			map1.put("name", "a01");
			list.add(map1);
			Map map2 = new HashMap();
			map2.put("id", "0101");
			map2.put("pId", "01");
			map2.put("name", "a0101");
			list.add(map2);
			JSONArray jSONArray = new JSONArray(); 
			for (Object object : list) {
				Map model = (HashMap)object;
				JSONObject jSONObject = new JSONObject();
				jSONObject.put("xxxid", model.get("id") );
				System.out.println(jSONObject);
				jSONArray.add(jSONObject);
				System.out.println(jSONArray);
			}
			JSONObject jSONObject = new JSONObject();
			jSONObject.put("jSONArray", jSONArray);
			String str = JsonUtil.fromObject(list);
			System.out.println("str=="+str);
			System.out.println(jSONObject);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

 

你可能感兴趣的:(json)