Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将返回类型指定为具有泛型的函数的参数_Java_Spring_Generics_Parameters_Jackson - Fatal编程技术网

Java 将返回类型指定为具有泛型的函数的参数

Java 将返回类型指定为具有泛型的函数的参数,java,spring,generics,parameters,jackson,Java,Spring,Generics,Parameters,Jackson,我正在努力使用具有函数作用域的泛型参数。以下是我的功能 public <RES, REQ> RES makePostRequest(String postRequest, REQ requestBody, Class<RES> type) { Response<type> resp = restTemplate.postForObject(postRequest, requestBody, Response.class); re

我正在努力使用具有函数作用域的泛型参数。以下是我的功能

public <RES, REQ> RES makePostRequest(String postRequest, REQ requestBody, Class<RES> type) {
        Response<type> resp = restTemplate.postForObject(postRequest, requestBody, Response.class);
        return resp.getBody();
}
Jackson,进行反序列化的json库需要指定返回类型。否则,响应不会转换为正确的类型。但是,响应无效。如何将RES作为参数并在响应中指定它

注意:我不想使用restTemplate.exchange。我不想设置所有http头并创建http实体。我只想通过一个参数指定泛型类型。感谢您的帮助。

试试以下方法:

return restTemplate.postForObject(postRequest, requestBody, type);
否则:

ResponseEntity<RES> resp = restTemplate.postForEntity(postRequest, requestBody, type);
return resp.getBody();