1

目前我有以下代码:

QueryExecution qe = QueryExecutionFactory.create(query, model);
ResultSet results = qe.execSelect();
while(results.hasNext()){
            results.next();
            counter += 1;
        }
        System.out.println(counter);

目前,当我运行它时,循环的每次迭代都可能需要几秒钟到一分钟的时间来执行。所以我的问题是,结果是否以惰性方式处理?如果是这样,有没有办法让它一次找到所有结果?

谢谢。

4

1 回答 1

1

是的(通常)。这项工作是在调​​用 hasNext 期间完成的,具体取决于查询、数据和任何推理设置。

有关一次使用所有结果的操作,请参阅 ResultSetFactory。

于 2012-11-07T10:59:13.363 回答