JsonHelper

package com.spider.common.util;

import java.util.List;
import java.util.Map;

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

public class JsonHelper {
	/** 从普通的Bean转换为字符串 * */
	public static String getJson(Object o) {
		JSONObject jo = JSONObject.fromObject(o);
		return jo.toString();
	}

	/** 从Java的列表转换为字符串 * */
	public static String getJson(List list) {
		JSONArray ja = JSONArray.fromObject(list);
		return ja.toString();
	}

	/** 从Java对象数组转换为字符串 * */
	public static String getJson(Object[] arry) {
		JSONArray ja = JSONArray.fromObject(arry);
		return ja.toString();
	}

	/** 从json格式的字符串转换为Map对象 * */
	public static Map getObject(String s) {
		return JSONObject.fromObject(s);
	}

	/** 从json格式的字符串转换为List数组 * */
	public static List getArray(String s) {
		return JSONArray.fromObject(s);
	}

	/** 从json格式的字符串转换为某个Bean * */
	public static Object getObject(String s, Class cls) {
		JSONObject jo = JSONObject.fromObject(s);
		return JSONObject.toBean(jo, cls);
	}

	/** 从json格式的字符串转换为某类对象的数组 * */
	public static Object getArray(String s, Class cls) {
		JSONArray ja = JSONArray.fromObject(s);
		return JSONArray.toArray(ja, cls);
	}
	
	public static void main(String[] args) {
		String xml = "{\"sign\":\"1234\",\"msg\":\"成功\",\"data\":[{\"status\":\"success\",\"alipaySid\":\"123456\"}]}";
		Map json = JsonHelper.getObject(xml);
		String signTaobao = (String)json.get("sign");//获取签名
		String msg = (String)json.get("msg");//获取信息抬头
		JSONObject data = (JSONObject)json.get("data");//获取data数据
		Map dataJsonMap = JsonHelper.getObject(JsonHelper.getJson(data));//解析data 的数据,成为map
		String status = (String)dataJsonMap.get("status");//交易状态: pay 已付款,unpay 未付款,success 出票成功,fail 出票失败
		String alipaySid = (String)dataJsonMap.get("alipaySid");//淘宝支付交易号
		System.out.println(signTaobao+"|"+msg+"|"+status+"|"+alipaySid);
	}
}

 

你可能感兴趣的:(JsonUtil)