lucene 全文检索引擎的架构
Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。 [1]
参考注意。没有测试
<dependencies> <dependency> <!-- 发送http请求 --> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.3</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.25</version> <scope>test</scope> </dependency> <dependency> <!--lucene的核心 --> <groupId>arg.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <version>6.6.0</version> </dependency> <dependency> <!--lucene的分词器 有标准的英文相关分词器 没有中文的 --> <groupId>org.apache.lucene</groupId> <artifactId>lucene-analyzers-common</artifactId> <version>6.6.0</version> </dependency> <dependency> <!-- 查询解析器 --> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queryparser</artifactId> <version>6.6.0</version> </dependency> <dependency> <!-- 各种查询方式 --> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queries</artifactId> <version>6.6.0</version> </dependency> <dependency> <!-- 关键字高亮 --> <groupId>org.apache.lucene</groupId> <artifactId>lucene-highlighter</artifactId> <version>6.6.0</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-demo</artifactId> <version>6.6.0</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies>
作为一个真正的程序员,首先应该尊重编程,热爱你所写下的程序,他是你的伙伴,而不是工具。