如何在 restTemplate 中使用 java 泛型
How to use java generics with restTemplate
我创建了一个 execute 方法,我将 restTemplate 实例与 class obj 一起传入。但是,我收到一些关于未检查类型的警告。我似乎无法弄清楚如何使用泛型来做到这一点。这是我目前所拥有的:
public class RepositoryUtils {
private static final Logger LOGGER = LoggerFactory.getLogger(RepositoryUtils.class);
public static ResponseEntity execute(String url, RestTemplate restTemplate, Class generic) {
LOGGER.info("GET: {}", url);
ResponseEntity response = null;
try {
response = restTemplate.exchange(url, HttpMethod.GET, RequestHelper.getGzipHttpEntity(), generic);
} catch (Exception e) {
LOGGER.error("RestTemplate: {} - {}", url, e.getMessage());
}
return response;
}
}
下面是我调用静态执行的方式:
ResponseEntity<Channels> response = RepositoryUtils.execute(channelUrlFinal, restTemplate, Channels.class);
以下是您可以尝试作为方法签名的内容:
public static <T> ResponseEntity<T> execute(String url, RestTemplate restTemplate,
Class<T> generic) {
我创建了一个 execute 方法,我将 restTemplate 实例与 class obj 一起传入。但是,我收到一些关于未检查类型的警告。我似乎无法弄清楚如何使用泛型来做到这一点。这是我目前所拥有的:
public class RepositoryUtils {
private static final Logger LOGGER = LoggerFactory.getLogger(RepositoryUtils.class);
public static ResponseEntity execute(String url, RestTemplate restTemplate, Class generic) {
LOGGER.info("GET: {}", url);
ResponseEntity response = null;
try {
response = restTemplate.exchange(url, HttpMethod.GET, RequestHelper.getGzipHttpEntity(), generic);
} catch (Exception e) {
LOGGER.error("RestTemplate: {} - {}", url, e.getMessage());
}
return response;
}
}
下面是我调用静态执行的方式:
ResponseEntity<Channels> response = RepositoryUtils.execute(channelUrlFinal, restTemplate, Channels.class);
以下是您可以尝试作为方法签名的内容:
public static <T> ResponseEntity<T> execute(String url, RestTemplate restTemplate,
Class<T> generic) {