报错信息大致为:java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to com.xxx.xxxx.entity.xxxx。
打断点调试,发现 得到的值属于LinkedHashMap类型,而不是实体类类型。
此时应该进行类型的转换,具体操作如下(仅为代码片段)——
//直接进行此种类型转换则会报文中标题的异常,应进行相应的处理
//DocNo docNo = (DocNo) parameterMap.get("docNo");
//处理如下
Object docNoObj = parameterMap.get("docNo");
ObjectMapper mapper=new ObjectMapper();
DocNo docNo = mapper.convertValue(docNoObj, DocNo.class);
如此处理之后则能够获得我们需要的实体类。还有一种方式是将docNoObj转换为josn格式,再转成相应的实体类格式。
对于ObjectMapper的使用可参考: