ParameterizedTypeReference用法

问题描述 投票:0回答:1

这似乎是多余且显而易见的问题,但是任何人都可以向我解释其余模板中的ParameterizedType参考的概念

spring-boot resttemplate
1个回答
0
投票

RestTemplate已过时,请改用WebClient。无论如何,如果目标类型是通用类型,则使用ParameterizedTypeReference。考虑到这一点,响应主体包含一个Set<SomeObject>,您不能将通用类型直接传递给exchange方法,因为Set<SomeObject>.class是无效的引用。在这种情况下,您可以使用ParameterizedTypeReference。下面是一个示例:

ParameterizedTypeReference<Set<SomeObject>> someObject = 
    new ParameterizedTypeReference<Set<SomeObject>>() {};

ResponseEntity<Set<SomeObject>> response =
    restTemplate.exchange("uri", HttpMethod.GET, null, someObject);

其他方法是将Set<SomeObject>封装到包装器中,并为该集合创建吸气剂和吸气剂。但我不建议使用它。

© www.soinside.com 2019 - 2024. All rights reserved.