ResponseEntity<List>接收结果时报错: java.util.LinkedHashMap cannot be cast to ***

场景

ResponseEntity接收结果时报错:
java.util.LinkedHashMap cannot be cast to ***

解决方案

使用序列化参数。

Map<String, String> params = new HashMap<>();
params.put("userName","likui");

HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Accept", "application/json");
HttpEntity<JSONObject> httpEntity 
	= new HttpEntity(params,headers); // 这里的params可以是map,也可以是其他实体

ResponseEntity<JsonResult<ListData>> exchange 
	= restTemplate.exchange(
		"http://api.test.com/showtime",
		HttpMethod.POST, 
		httpEntity, 
		new ParameterizedTypeReference<JsonResult<ListData>>() {}
	);

实测问题解决。

其他

网上还有其他方案说,将对象先序列化为json,再反序列化,实测还是报错。

上一篇:21. 合并两个有序链表


下一篇:扶风解析计费系统源码 1.7.1视频解析 短视频解析 影视视频电影解析计费平台源码程序