使用RestTemplate.postForObject方法远程调用接口,返回的时候会自动转成LinkedHashMap,此时如果想讲返回转换为java bean,会造成ClassCastException类型转换异常
解决办法如下:
第一种解决办法:
JSONObject jsonObject = restTemplate.postForObject(url, outletRequestDto, JSONObject.class);
OutletVO outletVO = jsonObject.getObject("data", OutletVO.class);
第二种解决办法:
ReturnData returnData = restTemplate.postForObject(url, outletRequestDto, ReturnData.class);
ObjectMapper mapper = new ObjectMapper();
OutletVO outletVO = mapper.convertValue(returnData.getData(), OutletVO.class);