简单学习了一下 Lucene,总结一下里面的概念

  • Directory : 用于存储 Lucene 所用到的 data,例如索引数据。常用的是 FSDirectory,用于将数据存储在文件系统上。
  • IndexWriter : 建立索引的类。在调用 addDocument(Document doc) 方法时,会将 doc 中的内容写入索引中。
  • Analyzer : 代表了内容分析的策略。
  • Document : Lucene 的核心类之一。用于描述搜索内容,可以简单理解为类似于数据表中的一行记录。IndexWriter 需用用其向索引中添加内容;IndexSearcher 需要用其显示搜索结果。
  • Searcher : 顾名思义,用于搜索的那个东西。常用的是 IndexSearcher,IndexSearcher 是线程安全的。IndexSearcher 允许在给定的目录中存储搜索索引。Search 方法返回一个根据计算分数排序的文档集合。Searcher 的 search 方法用于搜索,doc 方法用于根据索引值返回一个 Document 对象,以用于显示搜索结果。
  • Query : 它及其子类代表了不同的搜索策略。Query 可以通过构造函数和 add 方法添加 Term 对象。
  • Term : 是搜索的基本单位。它由两部分组成:单词文本和出现该文本的字段的名称。
  • ScoreDoc : 搜索结果中包含一个指向文档的简单指针。Searcher.doc(int) 方法便是根据这个指针去得到相应的 Document。这可以封装文档索引中文档的位置以及 Lucene 计算的分数。
  • TopDocs : 封装搜索结果以及 ScoreDoc 的总数。

 

你可能感兴趣的:(Lucene)