`

Lucene 3.0 初步2(搜索)

 
阅读更多
package cn.com.alei.lucene;

import java.io.File;
import java.io.IOException;

import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.queryParser.ParseException;
import org.apache.lucene.queryParser.QueryParser;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.SimpleFSDirectory;
import org.apache.lucene.util.Version;

/**
 * @author alei
 * @version 创建时间:2012-4-14 下午05:49:46
 */
public class Search {
	
	public static void main(String[] args) throws IOException, ParseException {
		
		//上次创建索引目录
		File indexpath = new File("D:\\framework\\luceneIndex");
		
		Directory directory = new SimpleFSDirectory(indexpath);
		
		//创建一个IndexSearcher 实例
		IndexSearcher indexSearcher = new IndexSearcher(directory);
		
		//创建QueryParser对象,第一个参数表示Lucene版本,第二个参数表示搜索Field的字段,第三个表示搜索分词器
		QueryParser queryparser = new QueryParser(Version.LUCENE_30,"content",new StandardAnalyzer(Version.LUCENE_30));
		
		//生成一个Query
		Query query = queryparser.parse("美国");
		
		TopDocs docs = indexSearcher.search(query, 10);
		
		System.out.println("共搜索到 :" + docs.totalHits + " 个");
		
		int size = docs.totalHits;
		
		if(size > 0){
			for(int i = 0 ; i < size ; i++){
				ScoreDoc sdoc = docs.scoreDocs[i];
				Document d = indexSearcher.doc(sdoc.doc);
				System.out.println(d.get("path"));
			}
		}
	}
	

}



分享到:
评论

相关推荐

    lucene3.0 lucene3.0

    lucene3.0 lucene3.0 lucene3.0 lucene3.0 lucene3.0

    lucene 3.0 API 中文帮助文档 chm

    lucene 3.0 API中文帮助,学习的人懂得的

    Lucene3.0之查询类型详解

    【Lucene3.0查询类型详解】 在Lucene3.0中,查询处理是一个关键环节,涉及多种查询方式和理论模型。以下是对这些概念的详细解释: 1. **查询方式**: - **顺序查询**:是最简单的查询方式,直接遍历索引,效率较...

    Lucene3.0 使 用 教 程

    通过学习Lucene3.0 使用教程,开发者能够掌握全文检索的基本原理和技术,为自己的应用系统添加高效、准确的搜索功能。这不仅限于网站内部,也可以应用于桌面应用程序、帮助系统等多种场景。随着技术的深入,开发者还...

    Lucene 3.0 原理与代码分析完整版

    《Lucene 3.0 原理与代码分析完整版》是一本深入解析Lucene 3.0搜索引擎库的专业书籍。Lucene是Apache软件基金会的开源项目,它为Java开发者提供了一个高性能、全文检索的工具包,广泛应用于各种信息检索系统。这...

    lucene3.0 分词器

    lucene3.0 中文分词器, 庖丁解牛

    lucene3.0庖丁+索引搜索程序

    《深入剖析Lucene3.0:庖丁解牛与索引搜索实践》 在IT行业中,搜索引擎技术扮演着至关重要的角色,而Lucene作为一个开源全文检索库,为开发者提供了强大的文本搜索功能。本文将深入探讨Lucene3.0版本,结合“庖丁解...

    lucene3.0核心jar包

    2. **分词器(Analyzer)**:Lucene 提供了多种分词器,如 StandardAnalyzer、SimpleAnalyzer 和 WhitespaceAnalyzer,它们负责将输入文本拆分成可搜索的词汇单元。在 Lucene 3.0 中,开发者可以根据需求选择或...

    Lucene3.0全文信息检索

    1. **更高效的搜索**:Lucene 3.0通过优化搜索算法和数据结构,提高了搜索速度。例如,使用了改进的位向量技术,使得布尔查询更快。 2. **多线程支持**:在3.0版本中,Lucene增强了多线程处理能力,允许在并发环境...

    lucene3.0资料包

    虽然Lucene3.0本身不直接支持分布式搜索,但可以通过Solr或Elasticsearch等基于Lucene的解决方案实现大规模集群部署,满足高并发和大数据量的检索需求。 10. **API与文档**: Lucene3.0提供了详尽的Java API,...

    lucene3.0 实例

    在 Lucene 3.0 版本中,虽然已经相对较旧,但仍然包含了基本的搜索引擎功能,适用于简单或特定场景的搜索需求。在这个实例中,我们将探讨如何在 JDK 1.5 和 Lucene 3.0 的环境下构建和运行一个简单的搜索引擎。 ...

    lucene3.0使用介绍及实例

    在这个例子中,我们创建了一个索引,包含一个文档,然后搜索包含"Lucene 3.0"的文档。这个简单的示例展示了Lucene的基本用法,实际应用中可以根据需要扩展,例如添加更多的文档字段、实现更复杂的查询逻辑,或者使用...

    lucene3.0-highlighter.jar

    lucene3.0-highlighter.jar lucene3.0的高亮jar包,从lucene3.0源码中导出来的

    lucene3.0全文检索入门实例

    **Lucene 3.0 全文检索入门实例** Lucene 是一个开源的全文检索库,由 Apache 软件基金会开发。它提供了一个高级、灵活的搜索功能框架,允许开发者在自己的应用中轻松地集成全文检索功能。本文将重点介绍如何使用 ...

    与lucene3.0兼容的庖丁jar包

    lucene升级了,分词也得升级哦! 在使用lucene3与paoding集成的时候可能会出现以下错误: Exception in thread "main" java.lang.AbstractMethodError: org.apache.lucene.analysis.TokenStream.incrementToken()Z ...

    Lucene3.0分词系统.doc

    Lucene3.0分词系统的核心在于理解和应用其分词原理,无论是对于英文还是中文文本,这一过程都是构建高效搜索引擎的基础。以下是对Lucene3.0分词系统中涉及的关键知识点的深入解析。 ### 英文分词原理 英文分词相较...

    lucene 3.0 入门实例

    在 Lucene 3.0 版本中,开发者可以利用其强大的功能来构建高效的搜索引擎应用。 ### 一、Lucene 的核心概念 1. **索引(Indexing)**: 索引是 Lucene 的基础,它将文本数据转换为可搜索的结构。在这个过程中,...

    lucene 2.0 api以及lucene 3.0 api

    总的来说,从 Lucene 2.0 进化到 3.0,主要变化在于性能提升、查询功能增强以及对更多场景的支持,这些改进使得 Lucene 成为了更加成熟和全面的全文搜索解决方案。学习并掌握这两个版本的 API,对于从事相关开发工作...

Global site tag (gtag.js) - Google Analytics