package org.se.lucene;
//主类
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.CorruptIndexException;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.util.Version;
public class hellowLucene {
public void index()
{
IndexWriter writer=null;
try {
//1.创建directory
Directory directory=FSDirectory.open(new File("F/lucene/Index03"));
//2.创建IndexWriter
writer=new IndexWriter(directory,new IndexWriterConfig(Version.LUCENE_36,
new StandardAnalyzer(Version.LUCENE_36)));
//3.创建Document对象
Document document=null;
//4.为Document添加Field
File f=new File("f:/lucene/lucenes");
for(File file:f.listFiles())
{
document=new Document();
document.add(new Field("content",new FileReader(file)));
document.add(new Field("filename",file.getName(),Field.Store.YES,
Field.Index.NOT_ANALYZED));
document.add(new Field("path",file.getAbsolutePath(),Field.Store.YES,
Field.Index.NOT_ANALYZED));
}
//5.通过IndexWriter添加文档到索引中
writer.addDocument(document);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
if(writer!=null)
writer.close();
}catch (CorruptIndexException e2) {
e2.printStackTrace();
// TODO: handle exception
}catch (IOException e2) {
e2.printStackTrace();
// TODO: handle exception
}
}
}
}
//测试类
package org.se.lucene;
import org.junit.Test;
public class LuceneTest {
@Test
public void test_Index()
{
hellowLucene hLucene=new hellowLucene();
hLucene.index();
}
}
分享到:
相关推荐
**Luke-Lucene Index Toolbox** Luke是一款强大的开源工具,专门用于浏览和分析Apache Lucene的索引。Lucene是Java开发的全文搜索引擎库,被广泛应用于各种搜索应用中,包括网站搜索、文档检索、数据挖掘等领域。...
用来查看lucene index的工具 分析index的结构。下载解压后直接点击运行即可!
为了对文档进行索引,Lucene 提供了五个基础的类 public class IndexWriter org.apache.lucene.index.IndexWriter public abstract class Directory org.apache.lucene.store.Directory public abstract class ...
1. **索引(Index)**:在Lucene中,索引是预处理步骤,将原始数据转换为可搜索的结构。这个过程包括分词(Tokenization)、词干提取(Stemming)和词性还原(Lemmatization)等,目的是提高搜索速度和准确性。 2. ...
这个“lucene入门小例子”很可能是为了帮助初学者理解并掌握Lucene的基本用法而设计的一系列示例代码。 Lucene的核心概念包括索引、文档、字段和查询。首先,你需要理解索引的概念,它类似于传统数据库中的索引,但...
这个“lucene 小资源”可能包含了作者在学习和使用Lucene过程中积累的一些资料和经验,对于初学者或者想要深入理解Lucene的人来说,是非常宝贵的资源。 Lucene的核心功能包括文档索引、搜索以及相关的文本处理。它...
**Lucene检索小例子** Lucene是一个开源的全文搜索引擎库,由Apache软件基金会开发并维护。这个"lucene检索小例子"程序展示了如何利用Lucene的强大功能来构建索引和执行搜索操作。Lucene的核心特性包括文本分析、...
lucene3.0 lucene3.0 lucene3.0 lucene3.0 lucene3.0
### Lucene对XML文档建立索引的技术解析与实践 #### 一、引言 随着互联网技术的迅猛发展,非结构化数据(如XML文档)在企业和组织中的应用日益广泛。如何高效地处理这些非结构化的数据,特别是进行快速检索成为了一...
《Lucene索引小示例解析》 Lucene是一个高性能、全文检索库,它由Apache软件基金会开发并维护。在Java编程环境中,Lucene被广泛应用于构建搜索功能,特别是对于大量文本数据的高效检索。本篇文章将通过一个简单的小...
【标题】"neo4j-lucene-index-1.7.1.zip" 提供的是 Neo4j 数据库的一个基于 Lucene 的索引版本。Neo4j 是一个强大的图形数据库系统,它利用节点、关系和属性来存储和处理数据。Lucene 是一个高性能、全文本搜索库,...
at org.apache.lucene.index.DocInverterPerField.processFields(DocInverterPerField.java:137) at org.apache.lucene.index.DocFieldProcessorPerThread.processDocument(DocFieldProcessorPerThread.java:246) ...
**五、总结** Lucene的Facet查询功能极大地增强了信息检索的交互性和实用性。通过区间查询和多维度查询,用户可以根据各种条件进行筛选,而key-field-value模型则为数据组织提供了清晰的结构。在实际应用中,结合...
首先,索引过程将原始文档转换为倒排索引(Inverted Index),这是一个经过优化的数据结构,便于快速查找包含特定词项的文档。接着,查询阶段解析用户的搜索请求,生成相应的查询对象。最后,搜索阶段通过倒排索引...
通过对数据结构的有效利用,如快速排序、小根堆以及分级查找和二分查找的结合,Lucene能够处理大规模的文本数据,并提供高效的全文搜索服务。对于开发者来说,深入理解这些算法有助于优化索引和搜索性能,提升系统的...
1. **索引(Index)**:Lucene通过将文本数据转换为可搜索的结构——索引来实现全文检索。索引过程包括分词(Tokenization)、词干提取(Stemming)、停用词过滤(Stopword Removal)等步骤,以便优化搜索性能。 2....
**Lucene小实例文件检索** Lucene是一款由Apache软件基金会开发的全文检索库,它是Java编写的一个高性能、可扩展的信息检索库。这个“lucene小实例文件检索”旨在为初学者提供一个简单但完整的文件检索功能实现,...
Current version is 0.8.1, released on 13 Feb 2008. It uses the official Lucene 2.3.0 release JARs.
首先,Lucene的核心概念包括文档(Document)、字段(Field)、索引(Index)和查询(Query)。文档是信息的基本单位,可以包含多个字段,每个字段都有特定的类型,如文本、日期或数字。索引过程将文档中的文本转换...
标题 "neo4j-lucene-index-2.1.0.zip" 暗示了这是一个与 Neo4j 数据库相关的资源,特别是关于 Lucene 搜索索引的版本为 2.1.0 的组件。Neo4j 是一个著名的图形数据库系统,它使用节点、关系和属性来存储和查询数据。...