
Java
在使用RestTemplate进行网络请求时,有时会遇到ClassCastException异常。这个异常的原因是我们期望返回的是一个List
Java// 创建一个RestTemplate对象RestTemplate restTemplate = new RestTemplate();// 创建一个HttpHeaders对象,用于设置请求头HttpHeaders headers = new HttpHeaders();headers.setcontentType(MediaType.APPLICATION_JSON);// 创建一个HttpEntity对象,用于发送请求HttpEntity<String> entity = new HttpEntity<>(headers);// 发送GET请求,获取返回的JSON数据ResponseEntity<List<LinkedHashMap>> responseEntity = restTemplate.exchange( "http://api.example.com/data", HttpMethod.GET, entity, new ParameterizedTypeReference<List<LinkedHashMap>>() {});// 将返回的JSON数据转换为List<MymodelClass>对象List<LinkedHashMap> responseData = responseEntity.getBody();List<MymodelClass> mymodelList = new ArrayList<>();for (LinkedHashMap map : responseData) { MymodelClass mymodel = new MymodelClass(); mymodel.setId((Integer) map.get("id")); mymodel.setName((String) map.get("name")); // ... 其他字段的转换 mymodelList.add(mymodel);}以上代码中,我们首先创建了一个RestTemplate对象,并设置了请求头的Content-Type为application/JSon。然后,我们发送一个GET请求,获取返回的JSON数据。由于我们期望返回的是ListCopyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号