原文链接 http://www.importnew.com/12715.html
英文原文链接 http://www.lucenetutorial.com/lucene-in-5-minutes.html
Lucene五分钟教程
本文由 ImportNew - 刘 家财 翻译自 lucenetutorial。欢迎加入翻译小组。转载请见文末要求。
更新:下面的代码使用Lucene 4.0版本!
Lucene大大简化了在应用中集成全文搜索的功能。但实际上Lucene十分简单,我可以在五分钟之内向你展示如何使用Lucene。
1. 建立索引
为了简单起见,我们下面为一些字符串创建内存索引:
1 2 3 4 5 6 7 8 9 10 11 |
|
addDoc()方法把文档(译者注:这里的文档是Lucene中的Document类的实例)添加到索引中。
1 2 3 4 5 6 |
|
注意,对于需要分词的内容我们使用TextField,对于像id这样不需要分词的内容我们使用StringField。
2.搜索请求
我们从标准输入(stdin)中读入搜索请求,然后对它进行解析,最后创建一个Lucene中的Query对象。
1 2 |
|
3.搜索
我们创建一个Searcher对象并且使用上面创建的Query对象来进行搜索,匹配到的前10个结果封装在TopScoreDocCollector对象里返回。
1 2 3 4 5 6 |
|
4.展示
现在我们得到了搜索结果,我们需要想用户展示它。
1 2 3 4 5 6 |
|
这里是这个小应用的完整代码。下载HelloLucene.java。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
|
可以直接在命令行中使用这个小应用,键入java HelloLucene 。
下面可以做什么?
- 阅读下面关于Lucene的书籍。
- 你需要应该使用Apache Solr代替Apache Lucene吗?
- 更多关于Lucene的基本概念
Github上的基于maven的库
Mac Luq在Github上的基于maven的库:
https://github.com/macluq/helloLucene
用下面这条命令下载它:
1 |
|
PS:如果你是Java新手的话,试试下面的命令:
1 2 3 4 5 6 |
|
你会得到下面的结果:
1 2 3 |
|
Erik,一个可能对你有所帮助的读者抱怨到:
编译过程还算顺利,但是我不能正常运行这段代码。在网上搜索并且自己尝试了以后发现Lucene的jar文件必须在classpath中,否则运行不起来。这可能对很多像我这样的java初学者很多帮助。
安装Lucene
PS:我发现一些初学者在安装Lucene时有些困难。
你应该先下载Lucene,然后把它解压到一个你用于编程的目录。
如果你使用Netbeans,你也可以这么做:
- 遵循这里的教程。
- 按照下面的步骤:
- 通过以此点击Netbeans菜单栏上的“工具”,然后选择“库管理器”,把Lucene的jar文件作为外部类库加进来。
- 在Lucene项目上面右键,选择“属性”
- 在弹出来的对话框中,以此选择“类库”,”添加jar或文件夹”选项
- 定位到从lucene-[version].tar.gz解压出来的文件夹上,选择 lucene-core-[version].jar。
- 点击“确定”,现在jar文件就已经添加到你项目的classpath中去了。
原文链接: lucenetutorial 翻译: ImportNew.com- 刘 家财 译文链接: http://www.importnew.com/12715.html