A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 我是楠楠 黑马粉丝团   /  2019-4-18 10:06  /  765 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

【郑州校区】查询索引数据的核心API

1.1.1、核心API1.1.1.1、QueryParser(查询解析器)
1)QueryParser(单一字段的查询解析器)
图片1.png
2)MultiFieldQueryParser(多字段的查询解析器)
图片2.png
1.1.1.2、Query(查询对象,包含要查询的关键词信息)
l 1)通过QueryParser解析关键字,得到查询对象
图片3.png
l 2)自定义查询对象(特殊查询)
我们可以通过Query的子类,直接创建查询对象,实现高级查询(后面详细讲)
图片4.png
1.1.1.3、IndexSearcher(索引搜索对象,执行搜索功能)
IndexSearcher可以帮助我们实现:快速搜索、排序等功能。
IndexSearcher需要依赖IndexReader类
图片5.png
查询后得到的结果,就是打分排序后的前N名结果。N可以通过第2个参数来指定:
图片6.png
1.1.1.4、TopDocs(查询结果对象)
通过IndexSearcher对象,我们可以搜索,获取结果:TopDocs对象
在TopDocs中,包含两部分信息:
        int totalHits :查询到的总条数
        ScoreDoc[] scoreDocs        : 得分文档对象的数组
图片7.png
1.1.1.5、ScoreDoc(得分文档对象)
ScoreDoc是得分文档对象,包含两部分数据:
        int doc        :文档的编号
        float score        :文档的得分信息
        拿到编号后,我们还需要根据编号来获取真正的文档信息
图片8.png
传智播客·黑马程序员郑州校区地址
河南省郑州市 高新区长椿路11号大学科技园(西区)东门8号楼三层
联系电话 0371-56061160/61/62
来校路线  地铁一号线梧桐街站A口出

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马