JsonStrToJavaBean

本文介绍了一个 Java 应用程序中如何定义 POJO 类来表示商品信息,并展示了如何将这些对象转换为 JSON 格式,同时提供了 JSON 对象再转回 Java 对象的具体实例。
/**
* http://www.bejson.com/json2javapojo/
*/
//====================================
package com.ctl.kaola.util;

import java.util.List;

public class   GoodsInfo {
	private String goodsId;

	private List<String> skuIds;

	public void setGoodsId(String goodsId) {
		this.goodsId = goodsId;
	}

	public String getGoodsId() {
		return this.goodsId;
	}

	public void setSkuIds(List<String> skuIds) {
		this.skuIds = skuIds;
	}

	public List<String> getSkuIds() {
		return this.skuIds;
	}

	@Override
	public String toString() {
		return "GoodsInfo [goodsId="  goodsId  ", skuIds="  skuIds  "]";
	}

}
//====================================
package com.ctl.kaola.util;

public class   SkuIds implements java.io.Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

}

//====================================
package com.ctl.kaola.util;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONObject;
public class Root implements java.io.Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	private String recCode;

	private List<GoodsInfo> goodsInfo;

	public void setRecCode(String recCode) {
		this.recCode = recCode;
	}

	public String getRecCode() {
		return this.recCode;
	}

	public void setGoodsInfo(List<GoodsInfo> goodsInfo) {
		this.goodsInfo = goodsInfo;
	}

	public List<GoodsInfo> getGoodsInfo() {
		return this.goodsInfo;
	}

	@Override
	public String toString() {
		return "Root [recCode="  recCode  ", goodsInfo="  goodsInfo  "]";
	}
    public static void main(String[] args) {

		Root rootToJson=new Root();
		rootToJson.setRecCode("123");
		List<GoodsInfo> goodsInfoList=new ArrayList<>();
		GoodsInfo goodsInfo1=new GoodsInfo();
		goodsInfo1.setGoodsId("1");
		List<String> skuIds1=new ArrayList<>();
		skuIds1.add("1");
		skuIds1.add("2");
		goodsInfo1.setSkuIds(skuIds1);
		goodsInfoList.add(goodsInfo1);
		
		
		GoodsInfo goodsInfo2=new GoodsInfo();
		goodsInfo2.setGoodsId("1");
		List<String> skuIds2=new ArrayList<>();
		skuIds2.add("a");
		skuIds2.add("b");
		goodsInfo2.setSkuIds(skuIds2);
		goodsInfoList.add(goodsInfo2);
		
		rootToJson.setGoodsInfo(goodsInfoList);
		JSONObject jj=JSONObject.fromObject(rootToJson);
		System.out.println(jj);
		JSONObject json= JSONObject.fromObject(jj);
		Map<String,Object> config = new HashMap<>();
		config.put("goodsInfo", GoodsInfo.class);
    	Root root=(Root) JSONObject.toBean(json, Root.class,config);
    	System.out.println(root);
	
	}
}

//{"goodsInfo":[{"goodsId":"1","skuIds":["1","2"]},{"goodsId":"1","skuIds":["a","b"]}],"recCode":"123"}
//Root [recCode=123, goodsInfo=[GoodsInfo [goodsId=1, skuIds=[1, 2]], GoodsInfo [goodsId=1, skuIds=[a, b]]]]






评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值