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);
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值