`
gang_zai
  • 浏览: 39612 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Lucene学习笔记2--建立和数据库对应的索引

阅读更多
比如将数据的数据生成索引文件,查询出来的数据以list返回,则
1、定义分词器,lucene自带的分词器为标准分词器,StandardAnalyzer,
但我们这里要讲的是中文分词器--IK_CAnalyzer ikAnalyzer = new IK_CAnalyzer();

/* 创建索引初始化,执行这些语句将创建或清空c:\\index\\目录下所有索引 */
File file = new File(path);
if (file.isDirectory()) {
file.delete();
}

//中文分词器
IK_CAnalyzer ikAnalyzer = new IK_CAnalyzer();
IndexWriter writer1 = new IndexWriter(path, ikAnalyzer, true);
writer1.close();

IndexWriter writer2 = new IndexWriter(path, ikAnalyzer, false);
//这里的false表示在新建索引文件时要删除旧的索引文件,true表在旧的索引文件中追加新的索引记录
for (int i = 0; i < list.size(); i++) {
Document doc = new Document();
//这里的field代表数据库中某个表的列
Field field1 = new Field(ArticleTitle, "这里录入列对应的值",Field.Store.YES, Field.Index.TOKENIZED);
doc.add(field1);
Field field2 = new Field(ArticleText,"这里录入列对应的值", Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field2);
Field field3 = new Field(ArticleTime,"这里录入列对应的值" , Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field3);
..........
// 在这里还可以添加其他域
/* 添加这份文件到索引 */
writer2.addDocument(doc);
}
说明:
/*
* 创建一个域ArticleTitle,并往这个域里面添加内容 "Field.Store.YES"表示域里面的内容将被存储到索引
* "Field.Index.TOKENIZED"表示域里面的内容将被索引,以便用来搜索 Lucene给文档的字段设定三个布尔变量:
* 索引(indexed), 存储(stored), 切词(tokenized) ,
*/
分享到:
评论

相关推荐

    Lucene学习笔记

    ### Lucene学习笔记 #### 全文检索定义与概念 - **全文检索**:指的是一种从信息集合中检索特定信息的技术,特别是针对文本信息。它通过比较用户的查询请求与文档中的每个词来查找相关性高的文档,而不考虑查询...

    本人的Lucene2.9学习笔记

    Lucene的工作主要分为两大部分:建立索引和搜索索引。 1. 建立索引:这一过程涉及将原始数据(如文本文件、数据库记录等)转化为可搜索的索引结构。这通常通过创建`IndexWriter`实例完成,它会将数据转换成一系列的...

    lucene学习笔记

    **Lucene学习笔记** Lucene是一个高性能、全文检索库,由Apache软件基金会开发并维护,是Java编程语言中广泛使用的搜索引擎库。它提供了强大的文本分析、索引和搜索功能,适用于构建复杂的全文检索系统。本笔记将...

    全文检索学习笔记

    home`定义了Solr的工作目录,`Data_config.xml`定义数据源和导入规则,而`Solrconfig.xml`配置了请求处理器,如数据导入处理器`/dataimport`,它与`data-config.xml`配合,用于从数据库导入数据并建立索引。...

    Compass原理深入学习笔记

    【Compass原理深入学习笔记】 Compass是一款基于Apache Lucene的全文搜索引擎框架,它为开发者提供了更高级别的抽象层,简化了搜索引擎的集成工作。在理解Compass之前,我们需要先了解全文检索的基本概念和原理。 ...

    es学习笔记,覆盖全面,从入门到精通,原理画图分析

    根据文件提供的信息,我们可以了解到一系列关于Elasticsearch(简称ES)的知识点,包括其基本使用方法、结构化搜索、...在学习过程中,理解ES的文档、映射、查询等基本概念对于进一步的深入学习和应用具有重要意义。

    Elasticsearch笔记

    它建立在Lucene之上,但提供了一个更为简单和统一的接口,使开发者可以轻松地集成搜索功能到他们的应用中。 #### 2. Lucene概述 **Lucene** 是一个高性能、全功能的全文搜索引擎库。它为开发者提供了创建搜索应用...

    面试专题课堂笔记.zip

    8. **09MySQL数据库篇.pdf** - MySQL是常用的数据库系统,这部分可能涉及SQL基础、事务处理、索引优化、存储引擎选择等数据库设计和管理的知识。 9. **10搜索引擎篇.pdf** - 可能涉及到搜索引擎的基本原理,如...

    elasticsearch基础知识,从小白到入门

    - **倒排索引**:倒排索引是搜索引擎的核心技术之一,它将文档中的关键词与文档之间的对应关系建立索引,使得根据关键词快速查找文档成为可能。 - **分词**:分词是指将连续的文本切分成一个个单独的词语的过程,这...

Global site tag (gtag.js) - Google Analytics