0 0

关于先在Lucene搜索电影对象,然后用in在数据库中查找喜欢电影的人,分页该怎么办?5

查询是这样的
首先先在Lucene中查找相关电影的信息,得到电影的记录id,
然后再到数据库中用in(1,2,3,...n),查找喜欢这些电影的用户,得到用户的记录

现在我要做分页,该以什么标准来分呢?由于2个查询的总记录数不一样,我是把pageNum传给lucene还是数据库呢,有没有高手遇到了这类问题,谢谢

问题补充:我要展示查找的喜欢相关电影(从lucene搜索出来的)的用户(从数据库in查询),最终要展示的是用户,比如:
搜索喜欢名称关键字为“爱情”电影的用户列表,首先lucene搜索过程需要分页(不可能把所有的记录都搜索出来),随后,需要将搜索出来的电影id列表,在用户数据库上面用in(1,2,3)查询出来(此过程也需要分页,不可能把所有记录都查询出来),电影和喜欢电影的用户在2个不同的地方,叫我传pageNumber给哪个值呢?
2014年3月19日 22:24

2个答案 按时间排序 按投票排序

0 0

建议的方式是将用户喜好电影信息和电影本身的信息都作为Lucence的索引项目,这样搜索的结果就不是电影、而是用户了(比如用户ID、名称等),搜索到的结果做去重处理。

如果二者在两个数据库表上面,可以使用视图的方式做数据合并。


否则每一页电影的数据量是弹性的,很难做分页。

2014年3月20日 17:01
0 0

你的问题是不知道自己要展示什么
知道后就知道怎么分了

2014年3月20日 09:32

相关推荐

    Lucene.net建立索引,检索分页Demo

    在 Lucene.net 中,首先需要创建一个 IndexWriter 对象,然后使用 AddDocument 方法添加文档。每个文档由字段(Field)组成,字段可以设置不同的属性,如是否存储原始内容、是否可被搜索等。索引创建完成后,使用 ...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--data

    - **搜索执行**:使用Query对象在索引中查找匹配的文档,返回ScoreDoc数组,表示文档的相关度。 - **排序**:通过调整查询参数,可以基于文档的相关度、发布日期或其他自定义字段对结果进行排序。 - **分页**:...

    LUCENE的搜索引擎例子

    1. **索引创建**:这是搜索引擎的第一步,我们需要遍历要索引的数据源(例如文件系统、数据库等),读取内容,并使用Lucene的Analyzer进行分词,然后创建Term(词项)和Document(文档)。Analyzer是负责文本分析的...

    基于lucene的去词、禁词、搜索等操作

    例如,在英文中,"the"、"and"、"in"等词频繁出现但对搜索结果影响不大,可以作为禁词处理。 四、搜索操作 1. 查询解析:Lucene提供了QueryParser类,可以将用户的输入转化为查询对象。QueryParser能够理解各种...

    一个基于LUCENE搜索引擎项目例子

    然后,`Query`对象会被用于在索引中查找匹配的文档。Lucene支持多种查询类型,如布尔查询、短语查询、范围查询等,可以根据需求灵活运用。 搜索结果的排序是另一个重要环节。Lucene默认使用TF-IDF(词频-逆文档频率...

    lucene检索小例子

    **Lucene检索小例子** Lucene是一个开源的全文搜索引擎库,由Apache软件基金会开发并维护。这个"lucene检索小例子"程序展示...无论是在网站、数据库还是其他任何需要搜索功能的应用中,Lucene都是一个值得信赖的选择。

    搜索引擎 Lucene PPT 教程

    **搜索引擎 Lucene PPT 教程** Lucene是一款开源全文...通过这个PPT教程,你将全面了解Lucene的原理、使用方法以及如何在实际项目中集成和优化搜索引擎。每个章节都会结合实例,帮助你更好地掌握这一强大的搜索工具。

    基于爬虫和lucene构建的重大新闻网

    在实际应用中,后端系统会接收前端用户的查询请求,使用Lucene进行搜索,并将结果返回给前端展示。同时,由于新闻数据量大,数据库的设计和优化也是关键,可能需要考虑如下的技术点: - **数据库设计**:合理设计...

    Ajax+Lucene 打造搜索引擎

    Lucene的QueryParser类可以帮助我们生成查询对象,然后使用IndexSearcher来查找匹配的文档。搜索结果可以按相关性排序,Lucene的ScoreDoc类包含了每个匹配文档的评分。搜索完成后,服务器将结果显示为JSON格式,再由...

    lucene4.8学习资料和案例

    1. 文档(Document):Lucene中的基本单位,用于存储信息,可以理解为数据库中的记录。 2. 字段(Field):文档内的细分部分,如标题、内容、作者等,每个字段有特定的索引和存储设置。 3. 分词器(Analyzer):处理...

    Lucene全文搜索引擎的应用

    ### Lucene全文搜索引擎的应用 #### 摘要与背景 随着互联网技术的飞速发展,搜索引擎已成为人们获取信息的重要工具之一。它不仅提供了大量的信息,还简化了信息查找的过程。对于学术研究、日常学习和工作而言,...

    delphi 系统开发 数据库模糊查询系统

    在Delphi系统开发中,数据库模糊查询系统是一个关键的组件,它允许用户通过不精确的关键词来搜索数据库中的记录。这种功能广泛应用于各种信息管理系统,如企业资源规划(ERP)、客户关系管理(CRM)和内容管理系统等...

    lucene3.6入门实例教程

    3. **查询与搜索**:讲解如何使用查询解析器将用户输入的字符串转换为Lucene查询对象,然后利用搜索器在索引中查找匹配的文档。此外,还会涉及评分系统(Scoring),它决定了搜索结果的相关性。 4. **结果集处理**...

    基于Lucene的Web站内信息搜索系统.rar

    2. 搜索逻辑实现:在后台服务中,使用Lucene的Analyzer进行查询分析,然后构造Query对象,通过IndexSearcher执行搜索。 3. 结果处理:获取搜索结果后,进行相关性评分,按照评分排序,并转化为适合展示的格式返回给...

    lucene4.4使用手册.docx

    在Java项目中使用Lucene,需要创建索引并编写简单的搜索程序。创建索引涉及对文档内容的分析,而搜索则包括了使用Term查询、多字段QueryParser查询以及分页查询。 5. **Lucene的增删改查操作** - **创建索引**:...

    Lucene教程

    4. 搜索执行:Searcher根据查询对象在索引中搜索,返回匹配的Document集合。 5. 结果处理:对搜索结果进行排序和分页,返回给用户。 四、Lucene与其他工具的结合 在本教程中提到的"jackrabbit.uml"和"jackrabbit.~...

    Lucene.Net_2_3_1.rar

    - **学术研究**:在文献数据库中,帮助研究人员查找相关的学术论文。 **4. 使用Lucene.Net的步骤** 1. **创建索引**:首先,需要读取源数据并使用Analyzer进行预处理,然后使用IndexWriter创建索引。 2. **添加和...

    一个专业搜索公司关于lucene+solar资料(1)

    - 本章详细介绍了自然语言处理技术在搜索引擎中的应用,包括中文分词、关键词提取、自动摘要等多个方面。 #### 六、索引库创建与管理 **6.1 设计索引库结构** - **6.1.1 理解Lucene的索引库结构** - Lucene索引...

    面试指南-Lucene:ES篇.md

    在Lucene中,Trie树可以用于实现高效的前缀搜索。 - **特点**:易于实现前缀匹配,适用于关键词搜索。 - **扩展**:Trie树还可以进一步优化为压缩Trie树(Compressed Trie),以减少存储空间的需求。 **5. FST原理...

Global site tag (gtag.js) - Google Analytics