我有以下Java代码;

PagedResponse<Person> response = new PagedResponse<Person>();
TypedQuery<Person> query = getNamedQuery("Person.findSpecific", Person.class);
response = executePagedTypedQuery(query);


现在executePagedTypedQuery定义为;

protected <T> PagedResponse<T> executePagedTypedQuery(TypedQuery query) {

PagedResponse<T> response = new PagedResponse<T>();
List<T> resultList = query.getResultList();

}


现在,我希望在executePagedTypedQuery()方法内部,将类型T设置为“ Person”,这就是我要传递的内容。
但是由于某种原因,在调试时,它说

T = >"T" is not a known variable in the current context.<


我是否错误地传递了参数?

最佳答案

如果将签名更改为

protected <T> PagedResponse<T> executePagedTypedQuery(TypedQuery<T> query)


那么当您传递查询时,将相应地选择T

10-08 20:18