Lucene
小松悦读会 | kevinelstri
小松悦读会,用心阅读,执着专注!
展开
-
apache lucene介绍
什么是lucene Apache Lucene是一个开放源程序的搜寻器引擎,利用它可以轻易地为Java软件加入全文搜寻功能。Lucene的最主要工作是替文件的每一个字作索引,索引让搜寻的效率比传统的逐字比较大大提高,Lucen提供一组解读,过滤,分析文件,编排和使用索引的API,它的强大之处除了高效和简单外,是最重要的是使使用者可以随时应自已需要自订其功能。 Lucene是apache软件基金会项转载 2016-04-06 13:43:53 · 514 阅读 · 0 评论 -
输出txt列表的内容(Txt2String)
对于txt列表,如何从列表中将数据输出,这是在查询的过程中首先需要做的:package org.algorithm;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.util.ArrayList;import java.util.List;public class原创 2016-08-26 10:34:45 · 1047 阅读 · 0 评论 -
Lucene token解析
Lucene模块分析: Lucene的 analysis 模块主要负责词法分析及语言处理而形成Term. Lucene的 index 模块主要负责索引的创建,里面有IndexWriter. Lucene的 store 模块主要负责索引的读写。 Lucene的 QueryParser 主要负责语法分析。 Lucene的 search 模块主要负责对索引的原创 2016-08-25 20:24:23 · 1446 阅读 · 0 评论 -
lucene的丰富的各种查询(一)
lucene支持十分丰富的查询,这里列写其中一些比较常用的查询的用法。 term查询 queryParser查询 booleanQuery查询package search;import org.apache.lucene.analysis.standard.StandardAnalyzer;import org.apache.lucene.index.Term;import org.ap原创 2016-04-06 13:57:11 · 468 阅读 · 0 评论 -
比较lucene各种英文分析器Analyzer
比较常用的几种英文分析器,他们之间的区别见程序中的注释。 SimpleAnalyzer StandardAnalyzer WhitespaceAnalyzer StopAnalyzerpackage analyzer;import java.io.Reader;import java.io.StringReader;import org.apache.lucene.analysis.Ana原创 2016-04-06 13:55:55 · 709 阅读 · 0 评论 -
【Lucene02】索引的相关概念
一、重要类 (1)IndexWriter:索引过程中的核心组件,用于创建新索引或者打开已有索引,以及向索引中添加、删除、更新被索引文档的信息。 (2)Document:代表一些域(field)的集合。 (3)Field及其子类:一个域,如文档创建时间,作者,内容等。 (4)Analyzer:分析器。 (5)Directory:可用于描述Lucene索引的存放位置。二、文原创 2016-08-29 21:23:57 · 551 阅读 · 0 评论 -
【Lucene01】索引的建立&Luke的配置使用
在Lucene对文本进行处理的过程中,可以大致分为三大部分: 1、索引文件:提取文档内容并分析,生成索引 2、搜索内容:搜索索引内容,根据搜索关键字得出搜索结果 3、分析内容:对搜索词汇进行分析,生成Quey对象。索引文件基本步骤如下: 1、创建索引库IndexWriter 2、根据文件创建文档Document 3、向索引库中写入文档内容packa原创 2016-08-29 20:02:09 · 1632 阅读 · 0 评论 -
【Lucene02】索引和搜索建立
1、索引 1、创建索引库IndexWriter 2、根据文件创建文档Document 3、向索引库中写入文档内容对文档建立索引,Lucene提供了5个类:Document, Field, IndexWriter, Analyzer, Directory. 1、Document 用来描述文档的,这里的文档可以指一个 HTML 页面,一封电子邮件,或者是一个文本文件原创 2016-08-29 20:29:45 · 649 阅读 · 0 评论 -
Lucene索引库的简单优化
根据实际情况对索引库进行优化,可以提升创建索引和搜索的速度。 1、合并索引库片段文件 IndexWriter的optimize()方法已经过时,因为这个方法的效率很低。合并文件主要是使用IndexWriter的setMergeFactor(int)方法,但是在Lucene3.6版本中,该方法已过时,直接使用LogMergePolicy.setMergeFactor(int)方法代替。 当set转载 2016-04-06 15:04:28 · 592 阅读 · 0 评论 -
关于Lucene以及索引和搜索的流程
Lucene的普及和成功的背后是因为它的简单。 因此,你不需要深入理解Lucene的信息索引和检索工作方面的知识就可以开始使用。 Lucene提供了简单但是强大的核心API去实现全文索引和检索,你只需要掌握少数的类就能将Lucene整合到应用中。 刚接触Lucene的人可能会误认为Lucene是一个文件搜索工具、网络爬虫、或者网页搜索引擎。实际上Lucene是一个软件库,而不是一个全功能的搜索转载 2016-04-06 15:02:23 · 2896 阅读 · 0 评论 -
lucene的中文分词器
lucene的中文分词器到现在还没有好的解决办法。下边介绍了两个lucene自己提供的分词器和一个javaeye上的网友实现的分词器。关于各个分词器的不同见代码中的print信息。直接运行得到console的输出结果更容易对比不同。package analyzer;import java.io.Reader;import java.io.StringReader;import org.apache转载 2016-04-06 14:00:25 · 756 阅读 · 0 评论 -
lucene的丰富的各种查询(二)
lucene的查询用法包括了RangeQuery、prefixQuery、phraseQuery、wildcastQuery、fuzzyQuery 被索引查询的文件,按照需求自己构造即可。package search;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import转载 2016-04-06 13:59:14 · 418 阅读 · 0 评论 -
lucene建立索引时候的用到的一些文档和目录操作
在前边的文章中多是用的添加一个document,这里介绍一下其它的文档操作 1,按照编号删除public void deleteDoc(String indexDir) throws Exception{ IndexReader reader = IndexReader.open(indexDir); reader.delete(1); reader转载 2016-04-06 13:54:41 · 434 阅读 · 0 评论 -
lucene 索引非txt文档 (pdf word rtf html xml)
搜索要首先要索引,索引的话最简单的方式是索引txt文件,上文已经介绍了。这里介绍一下一些其它格式的文档的索引,例如ms word ,pdf ,rtf等。 索引方法:就是先把各种文档先转化成纯文本再索引,所以关键在转换上。幸好java世界中有太多的开源工程,很多都可以拿来直接使用。下边分别介绍一下: 写在所有之前:下边所有介绍中的is参数都是inputStream,就是被索引的文件。 word文转载 2016-04-06 13:51:50 · 790 阅读 · 0 评论 -
apache lucene 的核心类
下边介绍一下lucene的核心类:(参考lucene in action) 主要有两部分组成,核心索引类和核心搜索类,顾名思意,就是用来建立索引和用来搜索的类。IndexWriter:可以对索引进行写操作,但不能读取或者搜索。是唯一能写索引的类。**Directory:**Directory类代表一个Lucene索引的位置。它是一个抽象类,允许它的子类(其中的两个包含在Lucene中)在合适时存储转载 2016-04-06 13:49:17 · 441 阅读 · 0 评论 -
apache lucene 一个最简单的实例
就像每个程序都有一个Hello World来让人体验它一样,lucene也可以很简单的提供一个实例。如下(来自lucene in action的例子)有两个类组成: 一个是建立索引:package my;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.ut转载 2016-04-06 13:47:14 · 636 阅读 · 0 评论 -
POI 输出word列表的内容(Doc2String)
对于word列表,如何从列表中将数据输出,这是在查询的过程中首先需要做的:package org.algorithm;import java.io.File;import java.io.FileInputStream;import java.util.ArrayList;import java.util.List;import org.apache.poi.hwpf.HWPFDocument原创 2016-08-26 11:18:54 · 731 阅读 · 0 评论