JAVA泛型Foo<;Bar>;。班
我有一个关于这一一般性问题的建议:JAVA泛型Foo<;Bar>;。班,java,generics,Java,Generics,我有一个关于这一一般性问题的建议: public class GenericResponseEntities<T> extends BSResponseEntity { private List<T> returnedObject; /** * @return the returnedObject */ public List<T> getReturnedObject() { return returne
public class GenericResponseEntities<T> extends BSResponseEntity {
private List<T> returnedObject;
/**
* @return the returnedObject
*/
public List<T> getReturnedObject() {
return returnedObject;
}
/**
* @param returnedObject
* the returnedObject to set
*/
public void setReturnedObject(List<T> returnedObject) {
this.returnedObject = returnedObject;
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
return "GenericResponseEntities [returnedObject=" + returnedObject + "]";
}
}
公共类GenericResponseEntity扩展了BSResponseEntity{
私有列表返回对象;
/**
*@return返回的对象
*/
公共列表getReturnedObject(){
返回返回对象;
}
/**
*@param returnedObject
*要设置的returnedObject
*/
public void setReturnedObject(列出returnedObject){
this.returnedObject=returnedObject;
}
/*
*(非Javadoc)
*
*@see java.lang.Object#toString()
*/
@凌驾
公共字符串toString(){
return“GenericResponseEntities[returnedObject=“+returnedObject+”]”;
}
}
我是这样使用它的:
public static <T> List<T> getGenericFromUrl(String url) {
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<GenericResponseEntities<T>> responseEntity;
List<T> list = new ArrayList<T>();
try {
responseEntity = restTemplate.getForEntity(url, GenericResponseEntities<T>.class);
if (responseEntity.getBody().getCode().equals(HttpStatus.OK.toString())) {
list.addAll(responseEntity.getBody().getReturnedObject());
}
} catch (Exception e) {
e.printStackTrace();
}
return list;
}
公共静态列表getGenericFromUrl(字符串url){
RestTemplate RestTemplate=新RestTemplate();
反应性反应性;
列表=新的ArrayList();
试一试{
responseEntity=restTemplate.getForEntity(url,GenericResponseEntities.class);
if(responseEntity.getBody().getCode().equals(HttpStatus.OK.toString())){
addAll(responseEntity.getBody().getReturnedObject());
}
}捕获(例外e){
e、 printStackTrace();
}
退货清单;
}
我在ligne上有以下错误:
我的问题是如何获得GenericResponseEntities.class的类
我可以通过使用特定的响应实体(FooResponseEntity、BarResponseEntity…)来避免这些错误。有了这个解决方案,我将拥有如此多的特定响应实体,以致于特定的服务器响应
谢谢
Msf vtp如果我删除签名中的
,我有以下错误:
可能的副本无法传递泛型类型的类。试一下一般性的回答。这不是一个无聊的问题。我想得到Foo.class而不是T.class为什么你的方法符号是“public static List getGenericFromUrl”而不是“public static List getGenericFromUrl”?静态方法不能这样得到泛型参数@Msfvtp。