首页 > 其他分享 >Lucene分页方式(转)

Lucene分页方式(转)

时间:2023-09-14 12:02:19浏览次数:35  
标签:endIndex Hits 分页 方式 int hits Lucene startIndex Document


推荐的做法是为每一次分页导航都执行一次新的 查询。因为Hits中保存的并不是真正的Document,因此可以通过HIts.doc(index)的方式取出在一定范围内的Document。在获 得Hits后可以用类似下面的方法进行分页处理:

private List processHits(Hits hits,int startIndex,int endIndex)throws Exception{
if(endIndex>=hits.length())
endIndex=hits.length()-1;
List docs=new ArrayList();
for(int i=startIndex;i<=endIndex;i++){
Document doc=hits.doc(i);
Map docMap=new HashMap();
docMap.put(”id”,doc.getField(”id”).stringValue());
docMap.put(”name”,doc.getField(”name”).stringValue());
docMap.put(”price”,doc.getField(”price”).stringValue());
docs.add(docMap);
}
return docs;
}




这里可以按自己的需要重新封装Document和Field的数据。startIndex和endIndex标定了当前页面的范围。


标签:endIndex,Hits,分页,方式,int,hits,Lucene,startIndex,Document
From: https://blog.51cto.com/u_16261339/7468630

相关文章

  • 探索未来的人机交互方式
    在21世纪,人工智能(AI)已成为科技领域的重要焦点,特别是在“生成式AI”这个细分领域中。所谓的“生成式AI”是指能够创造、理解和生成各种形式内容的人工智能系统。本文将重点探讨“生成式AI”报告中的重点词汇或短语,为您解析它的潜力与未来。一、生成式AI的背景近年来,随着深度学习和自......
  • 使用python进行数据同步,根据游标的方式
    使用python进行数据同步,根据游标的方式一、介绍:数据同步分为好几种,比如根据最大id排序,其次才是根据游标进行排序。为什么不使用最大id进行数据同步?如下:因为如果数据表中的数据是按照降序排序的,那么每次根据最大id取1000条数据的方式也是一种可行的分页查询方式。这种方式的优......
  • Learn Git in 30 days——第 17 天:关于合并的基本观念与使用方式
    写的非常好的一个Git系列文章,强烈推荐原文链接:https://github.com/doggy8088/Learn-Git-in-30-days/tree/master/zh-cn 我曾在【第08天:关于分支的基本观念与使用方式】提过关于「分支」的基本观念与用法,现在则要来讲「合并」如何进行。由于Git是一种分布式版本控制系统(......
  • 关于 SAP UI5 扩展标准应用的两种方式
    SAPUI5提供了两种方式来让应用开发人员对标准SAPUI5应用进行扩展:SAPUI5Flexibility:这种方式是扩展SAPFioriElements应用程序(基于SAPUI51.56或更高版本)的首选方式。它使用更好的界面,支持分层(layering)以及生命周期hook.ComponentConfiguration:这种方......
  • Apache Iceberg 表有哪些性能优化方式
    ApacheIceberg是一种开源的分布式数据表格格式,旨在提供可扩展性、性能和数据一致性。它建立在ApacheHadoop的基础上,并支持多种数据湖存储(如HadoopHDFS、AmazonS3等)。为了优化ApacheIceberg表的性能,可以采取多种策略和技术,以下是一些重要的性能优化方式和详细示例:Partition......
  • Linux实现查看文件内容的5种方式
    除了使用vi/vim编辑器查看文件内容和使用cat命令将文件所有内容展示到终端上以外,还有多种方式。1、more:分屏显示文件内容。   点击q键退出。    more与cat类似,只不过如果文件内容超过了当前终端一个屏幕能显示的大小,此时more命令就会在终端只显示一个屏幕的文件内容......
  • 创建mixin.js文件,引入表格分页
    //前端分页consttableFrontEndPaging={data(){return{currpage:1,page_size:10,page_list:[10,20,50],currentPage:null,header_cell_style:{background:'#C0C4CC',color:'#303133',borderColor:&#......
  • 做一个3dsmax的工具:复杂模型的显示方式
    功能包含:   总统计,用于分析1,选择模型一键转成VR代理\CR代理,  2, 面数>x,面数前几的物体显示切换  3,一键显示切换   4,探取用户的汉化属性情况,5,进行汉化信息。等等对操作大场景的设计师非常实用,我这个插件我也......
  • tyoora 写入注册表创建快捷方式到Windows右键新建栏
    注意,编码方式不要采用utf-8编码,否则会有中文乱码解决方法,使用ANSI编码,保存文件为.reg格式,双击运行,给权限运行新建栏目即生成可新建的Markdown文档文件WindowsRegistryEditorVersion5.00[HKEY_CLASSES_ROOT\.md]@="Typora.exe"[HKEY_CLASSES_ROOT\.md\ShellNew]......
  • java spring,springmvc,spring boot,spring data,RESTful api设计风格,HTTP协议的四种传
    一.基本技术1.Springmvc=手动接电线(配置xml),提供了一种友好的方式来开发Web应用程序。通过使用诸如DispatcherServlet,ModelAndView和ViewResolver,可以轻松开发Web应用程序。2.SpringBoot=标准插座(第3方开源类库想接入,就按照标准做一个starter的适配),实现了免xml配置和提......