索引的创建:
IndexWriter: 用于创建索引
Directory: 这个可以用来定义我们的索引是存放在内存中还是在硬盘上
Analyzer: 分词器 有几种()
这个地方需要好好解释下
Document: 存放索引的文档信息,一个Document有多个Field
Field: 域名

索引的搜索过程:
IndexReader: 找到索引
IndexSearcher: 获取索引
Term: 检索过程中的最小单元,可以指定某个域为某个值
Query: 主要用来进行查询 (TermQuery(子类)
TopDocs: 用于返回索引的文本信息
ScoreDoc: 所有的文本信息(上面的TopDocs数组)都可以转换文档(通过get方法获取域的存储信息)

queryparser :使用queryparser完成解析搜索请求
基本格式: QueryParser parser=new QueryParser(版本号,"字段名字","分析器实例");
这个字段名字:是指你建立索引所设定的域名
Query q=new parser("关键字");

eg:
QueryParser parser = new QueryParser(Version.LUCENE_35,"content",analyzer);
Query q = parser.parse(query);

IndexSearcher:可以通过它的构造方法来获取你索引存放的位置
TopDocs tds = searcher.search(q, 500);//总共取出来的条数

TopDocs 指向相匹配的搜索条件的前N个搜索结果。它是指针的简单容器指向它们的搜索结果输出的文档。

ScoreDoc是代表一个结果的相关度得分与文档编号等信息的对象。
eg:

Directory dir = FileIndexUtils.getDirectory();
IndexSearcher searcher = getSearcher(dir);
QueryParser parser = new QueryParser(Version.LUCENE_35,"content",analyzer);
Query q = parser.parse(query);
TopDocs tds = searcher.search(q, );//总共取出来的条数
ScoreDoc[] sds = tds.scoreDocs;
int start = (pageIndex-)*pageSize;
int end = pageIndex*pageSize;
for(int i=start;i<end;i++) {
Document doc = searcher.doc(sds[i].doc);
System.out.println("filename:"+doc.get("filename"));
System.out.println("path:"+doc.get("path"));
System.out.println("date:"+doc.get("date"));
System.out.println("size:"+doc.get("size"));
System.out.println("content:"+doc.get("content"));
System.out.println("-------------------------------------------");
}

Lucene 常用名词解析的更多相关文章

  1. [HIS] HIT行业常用名词及缩写定义

    [HIS] HIT行业常用名词及缩写定义 1.   EHR 居民个人电子健康记录 2.   MPI 居民个人主索引 3.   HIS 医院管理信息系统 4.   CIS 医院临床信息系统 5.   P ...

  2. Ext 常用组件解析

    Ext 常用组件解析 Panel 定义&常用属性 //1.使用initComponent Ext.define('MySecurity.view.resource.ResourcePanel' ...

  3. Ionic 常用组件解析

    Ionic 常用组件解析 $ionicModal(弹出窗口): //创建一个窗口 //此处注意目录的起始位置为app $ionicModal.fromTemplateUrl('app/security ...

  4. Python爬虫beautifulsoup4常用的解析方法总结

    摘要 如何用beautifulsoup4解析各种情况的网页 beautifulsoup4的使用 关于beautifulsoup4,官网已经讲的很详细了,我这里就把一些常用的解析方法做个总结,方便查阅. ...

  5. 区块链名词解析:ICO、IFO、IEO和IMO,分别是什么呢?

    区块链名词解析:ICO.IFO.IEO和IMO,分别是什么呢?本部分给出了标准答案,但其相当枯燥乏味,建议快进. ICO(Initial Coin Offering),首次代币发行,指区块链项目首次向 ...

  6. java后台常用json解析工具问题小结

    若排版紊乱可查看我的个人博客原文地址 java后台常用json解析工具问题小结 这里不细究造成这些问题的底层原因,只是单纯的描述我碰到的问题及对应的解决方法 jackson将java对象转json字符 ...

  7. Apache入门 篇(二)之apache 2.2.x常用配置解析

    一.httpd 2.2.x目录结构 Cnetos 6.10 YUM安装httpd 2.2.x # yum install -y httpd 程序环境 主配置文件: /etc/httpd/conf/ht ...

  8. angular-cli.json配置参数解析,常用命令解析

    1.angular-cli.json配置参数解析 { "project": { "name": "ng-admin", //项目名称 &qu ...

  9. 窗口类WNDCLASSEX名词解析

    窗口类WNDCLASSEX名词解析 typedef struct tagWNDCLASSEX{ UINT cbsize; UINT style; WNDPROC lpfnWNDProc; int cb ...

随机推荐

  1. 一起来学大数据——走进Linux之门,学习大数据的重中之重

    昨天我们看了有关大数据Hadoop的一些知识点,但是要在学习大数据之前,我们还是要为大数据的环境做一些的部署. 那么,今天我们就来讲讲开启我们大数据之路的Linux,跟上我们的脚步yo~ Linux介 ...

  2. Python学习 :反射 & 单例模式

    反射 什么是反射? - 反射主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省) 面向对象中的反射 - 通过字符串的形式来操作(获取.检查.增加.删除)对象中的成员 - python中的 ...

  3. python 数据类型、进制转换

    数据类型 存储单位 最小单位是bit,表示二进制的0或1,一般写作b 最小的存储单位是字节,用byte表示,1B = 8b 1024B = 1KB 1024KB = 1MB 1024MB = 1GB ...

  4. 05-基础widgets

    05-基础widgets 介绍 Widget的功能是"描述一个UI元素的配置数据",Widget并不是表示最终绘制在设备屏幕上的显示元素,而只是显示元素的一个配置数据.Flutte ...

  5. 20155325《Java程序设计》实验一(Java开发环境的熟悉)实验报告

    实验一Java开发环境的熟悉-1 提交 Linux或Window或macOS中命令行下运行Java的截图 运行结果包含自己学号等证明自己身份的信息 实验一Java开发环境的熟悉-2 提交 Linux或 ...

  6. C#数据流

    C#编程中数据流的使用一直不很熟练,没有一个系统的认识,但是它的重要性显然不言而喻.System.IO下的Stream类是所有数据流的基类,当我们对数据进行逐字节操作时,首先需要将数据转换为数据流.C ...

  7. centos安装smokeping

    本文摘自网友博客,并亲自验证 博客地址:https://blog.csdn.net/erica_yue/article/details/78455101 1.安装依赖包: yum install -y ...

  8. python 内置模块(os)

    1.OS os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname")  改变当前脚本工作目录:相当于shell下cdos. ...

  9. bzoj4998 星球联盟

    bzoj4998 星球联盟 原题链接 题解 先按照输入顺序建一棵树(森林),然后用一个并查集维护联盟的关系,对于不是树上的边\(a-b\),就把\(a-lca(a,b),b-lca(a,b)\)全部合 ...

  10. 前端--再遇jQuery

    一.属性 属性(如果你的选择器选出了多个对象,那么默认只会返回第一个属性) attr(属性名|属性值) --一个参数是获取属性的值,两个参数是设置属性值 --点击图片加载示例 removeAttr(属 ...