环境:lucene2.0
我通过lucene把数据库中需要全文检索的表都建立了索引
其中包括:
id:主键
title:标题
content:描述
keywords:关键字
bigClass:大类
smailClass:小类
city: 城市
需求:
现在客户从客户端输入一个关键字k,那么,可以在title/content/keywords里面匹配,关系是or,就是说有一个满足就行了
bigClass/smailClass/city是and的关系
相当于sql: select * from table where (title like '%k%' or content like '%k%' or keywords like '%k%') and bigClass='大类' and smailClass='小类' and city='城市'
下面是我写的代码
String[] fields = {"title", "content","keywords"};//在title/content/keywords中找
BooleanClause.Occur[] flags = {BooleanClause.Occur.SHOULD,
BooleanClause.Occur.SHOULD,
BooleanClause.Occur.SHOULD};
query = MultiFieldQueryParser.parse(keywords, fields,flags,analyzer);
下面我就不怎么知道怎么写了:
if(bigClass!=null)加大类的限制条件
if(smailClass!=null)加小类的限制条件
if(city!=null)加城市的限制条件
还是有其他的更好的方法,请指点...
分享到:
- 2007-04-09 20:47
- 浏览 1391
- 评论(1)
- 论坛回复 / 浏览 (1 / 2984)
- 查看更多
相关推荐
同时,Lucene 2.0支持多种类型的查询,如布尔查询、短语查询、模糊查询等,满足了不同用户的搜索需求。 在分词工具方面,"je-analysis-1.4.0.jar"是一个重要的组件,它包含了对中文文本进行分词处理的算法和实现。...
总的来说,从 Lucene 2.0 进化到 3.0,主要变化在于性能提升、查询功能增强以及对更多场景的支持,这些改进使得 Lucene 成为了更加成熟和全面的全文搜索解决方案。学习并掌握这两个版本的 API,对于从事相关开发工作...
在Lucene 2.0版本中,主要包含以下核心功能: 1. **分词**: Lucene支持对文本进行分词,将大段文本分解成关键词,这是全文搜索的基础。 2. **索引**: 创建倒排索引,使得能快速定位到包含特定关键词的文档。 3. **...
《lucene2.0+Heritrix配套源码》是一个针对搜索引擎开发的资源包,包含了构建自定义搜索引擎所需的关键组件。Lucene是一个流行的全文搜索引擎库,而Heritrix则是一个强大的网页抓取工具,用于收集互联网上的数据。这...
- **模糊查询**:传统的数据库通常不支持模糊查询,而 Lucene 则能够很好地支持这类查询,提高了多关键词查询的效率。 **4. Lucene 的创新** - **索引结构**:不同于传统的 B 树结构,Lucene 在更新索引时会创建新...
在Lucene2.0中,我们能看到对倒排索引的优化,以及支持多字段、多语言和布尔查询等特性。 Heritrix则是互联网档案馆开发的一款网络爬虫,用于抓取和保存网页。Heritrix的强大之处在于其高度可配置性和扩展性,...
Lucene 2.0是一款强大的开源全文检索库,由Apache软件基金会开发并维护,是Java编程语言中的一个核心工具,广泛应用于搜索引擎的构建和其他信息检索场景。该版本发布于2006年,虽然现在已经有了更新的版本,但Lucene...
在Lucene 2.0中,主要的知识点包括以下几个核心模块: 1. **索引模块**:这是Lucene的基础,用于构建和管理全文索引。主要包括`IndexWriter`类,用于创建、更新和删除索引;`Analyzer`类,用于文本分析,将输入的...
在Lucene 2.0版本中,它提供了强大的文本分析能力,支持多种语言,并且对索引和查询性能进行了优化。这个版本的Lucene包含了许多关键组件,如文档模型、分词器、索引和查询解析器等,使得开发者能够快速构建自己的...
Lucene 2.0是该系列中的一个重要版本,相比早期版本,在性能和功能上都有显著提升。 #### 1.1 Lucene 2.0的特点 - **高效性**:通过优化的数据结构和技术实现,Lucene 2.0能够快速地索引和检索大量数据。 - **可...
《lucene2.0+heritrix 随书光盘》是针对搜索引擎技术的一个资源集合,其中包含了Lucene 2.0和Heritrix的相关示例及教程。Lucene是一款强大的全文检索库,而Heritrix则是一个互联网爬虫工具,它们在构建搜索引擎时起...
《Lucene2.0+Heritrix搜索引擎》随书光盘包含了两个重要的开源搜索技术——Apache Lucene 2.0和Heritrix的资源和教程。Lucene是Java开发的全文检索库,而Heritrix则是一个网络爬虫工具,它们在构建大规模搜索引擎和...
《深入理解Lucene-2.0:从源码到应用》 Lucene是一个开源的全文检索库,由Apache软件基金会开发并维护。它为Java开发者提供了强大的文本搜索功能,广泛应用于各种信息检索系统中。本篇文章将围绕"Lucene-2.0学习...
本篇将结合Lucene 2.0与Heritrix的源代码,探讨这两者的协同工作原理及其在实际应用中的知识要点。 一、Lucene 2.0核心概念与技术 1.1 分词器(Tokenizer)与过滤器(Filter) Lucene首先通过分词器将输入文本切割...
在 Lucene 2.0 版本中,相比于之前的 1.4.3 版本,有很多改进和优化,但同时也存在向后兼容性问题。2006 年 6 月 1 日发布的 Lucene 2.0,其下载地址是 http://apache.justdn.org/lucene/java/。 下面通过两个示例...
但作为入门实例,这个"Lucene2.0实例"应该会从最基本的层面教你如何启动并运行一个简单的搜索应用。通过学习并实践这些基础操作,你可以逐步掌握Lucene的核心功能,为进一步深入学习和开发更复杂的搜索系统奠定基础...
在《Lucene2.0+Nutch0.8 API帮助文档》中,你可以找到以下主要知识点: 1. **Lucene API**:包括如何创建索引、如何添加、删除和更新文档、如何构建查询对象、执行查询以及解析结果等。此外,还有关于分析器...
lucene 2.0虽然是比较老的技术,它对实时搜索支持交差,不过很多普通的搜索引擎对实时性要求并不是很高,并且对于分词上没有太多的个性化专业要求,那么这个选择将是非常好的,提供各类分词接口、存储接口、索引接口...
Lucene 2.0版本在当时是一个重要的里程碑,引入了许多新特性,如改进的性能、更灵活的查询语法和增强的稳定性。在这一版中,用户可以学习到如何处理文本分析、建立倒排索引、执行高效搜索,以及如何实现多字段、布尔...
在Lucene 2.0版本中,它已经相当成熟,支持多种功能,如索引创建、查询解析、文档排序等。Lucene的核心优势在于其高效的倒排索引机制,它能够快速地查找包含特定关键词的文档。开发者可以利用Lucene API来创建索引,...