索引的创建:
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. FLINK流计算拓扑任务代码分析<一>

    我打算以 flink 官方的 例子 <<Monitoring the Wikipedia Edit Stream>> 作为示例,进行 flink 流计算任务 的源码解析说明. ...

  2. (数据科学学习手札53)Python中tqdm模块的用法

    一.简介 tqdm是Python中专门用于进度条美化的模块,通过在非while的循环体内嵌入tqdm,可以得到一个能更好展现程序运行过程的提示进度条,本文就将针对tqdm的基本用法进行介绍. 二.基本 ...

  3. 20155217 2016-2017-2《Java程序设计》课程总结

    20155217 2016-2017-2<Java程序设计>课程总结 每周作业链接汇总 预备作业一:我所期望的师生关系 预备作业二:c与java的关系 预备作业三:安装虚拟机 第一周作业: ...

  4. 课上实践练习——MySort

    模拟实现Linux下Sort -t : -k 2的功能.参考 Sort的实现.提交码云链接和代码运行截图. Linux下Sort -t : -k 2的功能 sort的工作原理: sort将文件的每一行 ...

  5. 20155336 2016-2017-2 《Java程序设计》第四周学习总结

    20155336 2016-2017-2 <Java程序设计>第四周学习总结 教材学习内容总结 第六章 继承:面向对象中,为避免多个类间重复定义共同行为.(简单说就是将相同的程序代码提升为 ...

  6. [agc010D]Decrementing-[。。。思考题]

    Description 传送门 Solution 真是够神秘的啊... Alice和Bob两个真的城会玩. 不过本题一个暗示挺明显的.就是黑板上所有数不论何时gcd为1. 考场上我以为会很复杂,结果. ...

  7. [BZOJ1857][SCOI2010]传送带-[三分]

    Description 传送门 Solution 三分套三分.代码简单但是证明苦兮兮.. 假如我们在AB上选了一个点G,求到该点到D的最小时间. 图中b与CD垂直.设目前从G到D所耗时间最短的路径为G ...

  8. 【BZOJ1951】[SDOI2010]古代猪文

    [BZOJ1951][SDOI2010]古代猪文 题面 bzoj 洛谷 题解 题目实际上是要求 $ G^{\sum d|n\;C_n^d}\;mod \; 999911659 $ 而这个奇怪的模数实际 ...

  9. Hibernate5使用注解方式(转)

    用Hibernate5使用映射文件时存在一个问题没有解决,在映射文件中配置了student_sequence,但找不到映射文件自增长的序列的sequence(Oracle)数据库. 输出的是 Hibe ...

  10. docker基本的常用命令