Java 对象,数组 与 JSON 字符串 相互转化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 对象,数组 与 JSON 字符串 相互转化相关的知识,希望对你有一定的参考价值。

当 Java 对象中包含 数组集合对象时,将 JSON 字符串转成此对象。

public class Cart{}

public class MemberCoupon{}

public class CartGroup {

  private List<Cart> carts = new ArrayList<Cart>(); // 购物车列表

  private List<MemberCoupon> coupons = new ArrayList<MemberCoupon>(); // 优惠券列表


  public List<Cart> getCarts() {
    return carts;
  }

  public void setCarts(List<Cart> carts) {
    this.carts = carts;
  }

  public List<MemberCoupon> getCoupons() {
    return coupons;
  }

  public void setCoupons(List<MemberCoupon> coupons) {
    this.coupons = coupons;
  }

}

String jsonString = "{‘carts‘:[], ‘coupons‘:[]}";

Map<String, Class> classMap = new HashMap<String, Class>();
classMap.put("carts", Cart.class);
classMap.put("coupons", MemberCoupon.class);

JSONObject json = JSONObject.fromObject(jsonString);

CartGroup cGroup = (CartGroup)JSONObject.fromObject(json, CartGroup.class, classMap);

就可以的到一个完整的带有数组属性的CartGroup 对象了。

从而避免了net.sf.ezmorph.bean.MorphDynaBean cannot be cast to org.java.json.Cart 异常。

 














以上是关于Java 对象,数组 与 JSON 字符串 相互转化的主要内容,如果未能解决你的问题,请参考以下文章

Java对象与JSON字符串的互转

Js对象(四)对象与字符串相互转换 2021-11-24

JSON与对象的相互转换

JSON数据与Java对象的相互转换

PHP------数组和对象相互转化,stdClass Object转array

PHP------数组和对象相互转化,stdClass Object转array