简单的json和bean转换直接用:

public static void main(String[] args) {
String s = "{'request': [{'orderCode': 'HOJY20170226000074-O-0','cancelReason': '没有原因'},{'orderCode': 'HOJY20170226000074-O-1','cancelReason': '有原因'}]}";
JSONObject jb = JSONObject.fromObject(s);
JSONArray ja = jb.getJSONArray("request");
String orderCode = ja.getJSONObject(1).getString("orderCode");
String cancelReason = ja.getJSONObject(1).getString("cancelReason");
System.out.println(cancelReason+"-----"+orderCode);
}
输出结果:有原因-----HOJY20170226000074-O-1

--------------------------------------复杂模式,对象里面有list,比如ReturnOrderDO里面有属性A,B,属性B里面的属性是List<C>,这样直接转就不行报错了,需要用classmap------------------------------------------------------

  public static void main(String[] args) {
String s = "{'request': [{'returnOrder': {'returnOrderCode': 'RK131','warehouseCode': 'SunEee01'},'orderLines': {'orderLine':[{'ownerCode': 'ownerCode01','itemCode':'itemCode01','planQty': 100},{'ownerCode': 'ownerCode02','itemCode':'itemCode02','planQty': 100}]}}]}"; JSONObject jb = JSONObject.fromObject(s);
JSONArray ja = jb.getJSONArray("request");
List<ReturnOrderDO> list = JSONArray.toList(ja,ReturnOrderDO.class); for(ReturnOrderDO one:list){
Map<String, Class> classMap = new HashMap<String, Class>();
classMap.put("orderLine", OrderLine.class); ReturnOrderDO ss = (ReturnOrderDO) JSONObject.toBean(JSONObject.fromObject(one),ReturnOrderDO.class,classMap);
System.out.println(ss.getOrderLines().getOrderLine().get(0).getOwnerCode());
}}

【明哥报错簿】之json转换报错---net.sf.ezmorph.bean.MorphDynaBean cannot be cast to XXXDO的更多相关文章

  1. json学习系列(5)-json错误解析net.sf.ezmorph.bean.MorphDynaBean cannot be cast to

    最近在使用json的时候,报了下面的错误: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to java.lang.String 这种错误非常常见, ...

  2. json解析出现:java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to XXX

    感谢大佬:https://blog.csdn.net/one_ink/article/details/99817676 一.出错原因 当我们利用json解析中的toBean方法时,如果它的属性里面包含 ...

  3. JSON字符串转JavaBean,net.sf.ezmorph.bean.MorphDynaBean cannot be cast to ……

    在json字符串转java bean时,一般的对象,可以直接转,如:一个学生类,属性有姓名.年龄等 public class Student implements java.io.Serializab ...

  4. json 字符串包含数组转换为object对象是报异常java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to

    前台传到后台的json字符串 前台实现这种格式json字符串方式: function contentFun(){ respType = respTypeFun(); return "{\&q ...

  5. List转换成JSON对象报错(三)

    List转换成JSON对象 1.具体错误如下 Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/e ...

  6. 导入json文件报错,TypeError expected string or buffer

    导入json文件报错,TypeError expected string or buffer 原因:用字符串赋值后,python会把双引号转换为单引号 import json data = [{&qu ...

  7. json.loads 报错 json.decoder.JSONDecodeError

    json.loads报json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes 出现这个错误其实只 ...

  8. C#将XML转换成JSON转换XML

    原文:C#将XML转换成JSON转换XML using System; using System.Collections.Generic; using System.Linq; using Syste ...

  9. .NET JSON 转换 Error ” Self referencing loop detected for type“

    在进行实体转换为Json格式报错如下图: Self referencing loop detected for property 'md_agent' with type 'System.Data.E ...

随机推荐

  1. IDEA 运行报错 failed to create a child event loop

    背景 在IDEA中写了测试代码,但是运行的时候一直提示 java.lang.IllegalStateException: failed to create a child event loop ... ...

  2. 【BZOJ4016】[FJOI2014]最短路径树问题

    [BZOJ4016][FJOI2014]最短路径树问题 题面 bzoj 洛谷 题解 虽然调了蛮久,但是思路还是蛮简单的2333 把最短路径树构出来,然后点分治就好啦 ps:如果树构萎了,这组数据可以卡 ...

  3. spring源码-aop动态代理-5.3

    一.动态代理,这是一个很强大的东西哦.研发过程中我们会常用很多业务类,但是存在一个问题.如何在不修改源码逻辑的情况下,加入自己的相关逻辑.比如异常处理,日志记录等! 二.Java动态代理的两种方式JD ...

  4. 11-Dockerfile构建镜像

    用 Dockerfile 创建上节的 ubuntu-with-vi,其内容则为: FROM ubuntu RUN apt-get update && apt-get install v ...

  5. Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final) E. Down or Right

    从(1,1,n,n)每次只变一个坐标,进行询问. 如果问到对角线有距离限制, 再从(1,1,n/2,n/2)询问到(n/2,n/2,n,n) 记住前半部分贪心忘上走,后本部分贪心往右走 因为最后的路线 ...

  6. Python数据可视化的10种技能

    今天我来给你讲讲Python的可视化技术. 如果你想要用Python进行数据分析,就需要在项目初期开始进行探索性的数据分析,这样方便你对数据有一定的了解.其中最直观的就是采用数据可视化技术,这样,数据 ...

  7. 415. Valid Palindrome【LintCode java】

    Description Given a string, determine if it is a palindrome, considering only alphanumeric character ...

  8. 微软职位内部推荐-Senior Software Lead-Index Gen

    微软近期Open的职位: Position: Senior Software Development Lead Bing Index Generation team is hiring! As one ...

  9. Amazon - removed your selling privileges and placed a temporary hold on any funds - 1

    Hello, We are writing to let you know that we have removed your selling privileges and placed a temp ...

  10. linux计划任务 学习笔记

    原文链接: http://www.tsingfeng.com/?tag=cronjob 本文说的计划任务是指linux的Cronjob.语法 下面是个简单的计划任务: 10 * * * * /usr/ ...