如何减小 indexsearcher.search() 函数返回的“Hits”对象的大小?
目前我做类似的事情:
Hits hits = indexSearch.search(query,filter,...);
Iterator hitsIt = hits.iterator();
int newSize=0;
while (hitsIt.hasNext()){
Hit currHit = (Hit)hitsIt.next();
if (hasPermission(currHit)){
newSize++;
}
}
但是,当点击数很大(如 500 或更多)时,这会产生巨大的性能问题。
我听说过一种叫做“HitsCollector”或“Collector”的东西,它应该有助于提高性能,但我不知道如何使用它。
如果有人能指出我正确的方向,将不胜感激。
我们正在使用 Apache Lucene 在 Atlassian Confluence Web 应用程序中进行索引。