我必须将可滚动结果引用转换为列表引用。可能吗?当我尝试转换时,我遇到了异常,java.lang.ClassCastException: org.hibernate.impl.ScrollableResultsImpl cannot be cast to java.util.List.
请提供此问题的解决方案....
问问题
1725 次
2 回答
2
您不能将ScrollableResults
对象转换为List
. 投射不会自动为您转换对象。您需要自己创建一个新的List
,然后遍历ScrollableResults
并将每一行添加到List
自己:
ScrollableResults result = ...;
List<...> list = new ArrayList<>();
while (result.next()) {
list.add(result.get());
}
于 2012-10-03T07:10:49.053 回答
1
org.hibernate.impl.ScrollableResultsImpl
不实现java.util.List
接口。所以你不能把它投射到列表中。您应该通过调用 next 方法滚动对象并获取行值 ScrollableResultsImpl#getCurrentRow()
,然后插入到您的列表中。
ScrollableResults sResult = ...;
List<Object[]> list = any list implementation; like ArrayList/LinkedList...
while (sResult.next()) {
list.add(result.getCurrentRow());
}
于 2012-10-03T07:11:02.900 回答