将linkedhashmap列表的json响应转换为自定义java响应对象

8zzbczxx  于 2021-07-16  发布在  Java
关注(0)|答案(1)|浏览(567)

我遇到了一个奇怪的情况。我调用了一个外部api,它返回linkedhashmap的列表(例如:list<linkedhashmap<string,string>)
所以问题是如何将这个json响应转换成java中的定制响应对象

wlzqhblo

wlzqhblo1#

使用下面的代码将json响应转换为java中的自定义响应对象。

ResponseEntity<Object> response = restTemplate.exchange(
                pathURL,
                HttpMethod.{GET/POST ..},
                createHeader(),
                Object.class
        );

        final List<LinkedHashMap> responseList = objectMapper
                .convertValue(
                        response.getBody(),
                        new TypeReference<List<LinkedHashMap>>() {
                        }
                );

        LinkedHashMap<String, String> responseMap = responseList.get(0);

        CustomResponseObj infoResp = objectMapper.convertValue(responseMap, CustomResponseObj.class);

private HttpEntity<?> createHeader() {
        HttpHeaders headers = new HttpHeaders();
        return new HttpEntity<>(headers);
    }

相关问题