全国服务热线:400-885-2225

Lucene功能类介绍

  IndexWriter

  IndexWriter是创建索引和存储数据中心组件。

  IndexWriter这个类创建一个新的索引并且添加文档到一个已有的索引中。

  IndexWriter在整个应用中应该声明全局唯一,而且在项目关闭的时候只关闭一次

  Directory

  Directory:类代表一个Lucene索引的位置

  FSDirectory:它表示一个存储在文件系统中的索引的位置

  RAMDirectory:它表示一个存储在内存当中的索引的位置

  Document

  由多个字段(Field)组成

  一个Field代表与这个文档相关的元数据。如作者、标题、主题等等,分别做为文档的字段索引和存储。

  add(Fieldable field)添加一个字段(Field)到Document

  get(String name)从文档中获得一个字段对应的文本

  IndexSearcher

  IndexSearcher是用来在建立好的索引上进行搜索的

  只读的方式打开一个索引,所以可以有多个IndexSearcher的实例在一个索引上进行操作。

  它提供几个搜索方法,其中一些在抽象基类Searcher中实现

  Term与TermQuery

  TermQuery是抽象类Query的一个子类,它同时也是Lucene支持的最为基本的一个查询类

  Term是搜索的基本单元, Term对象有两个String类型的域组成:字段的名称和字段的值。

  在搜索时,你可能创建Term对象并和TermQuery同时使用

  Analyzer

  在一个文档被索引之前,首先需要对文档内容进行分词处理,和去除停用词(例如:a,the,they等)

  Analyzer 类是一个抽象类,它有多个实现。

  BrazilianAnalyzer, ChineseAnalyzer, CJKAnalyzer, CzechAnalyzer, DutchAnalyzer, FrenchAnalyzer, GermanAnalyzer, WhitespaceAnalyzer……

  针对不同的语言和应用需要选择适合的 Analyzer。Analyzer 把分词后的内容交给 IndexWriter 来建立索引

  基于中文分词推荐使用:IKAnalyzer

  IKAnalyzer

  IK Analyzer 是一个开源的,基于 java语言开发的轻量级的中文分词工具包

  2012 兼容 Lucene3.3 以上版本

  提供了细粒度分词和智能分词

  资源下载地址 :http://www.togogoedu.com/course/java-jp/

  Highlighter

  段划分器(Fragmenter)

  计分器(Scorer)

  格式化器(Formatter)

  腾科IT教育Java技术编辑

 
点击QQ沟通