最近一直感觉比较闲,找点事情做一下。用lucene写了一个小程序,是做文本文档检索的
首先说一下基本用途吧,我们用eclipse的时候,要是在工程里面找一些配置啊,参数啊,如果找不到都会用ctrl+h的,我也经常用,但是有时候搜索大项目的时候老是卡机,而且每次搜都很慢。还有就是我要找别的项目里面的配置文件信息,我还要把项目在导入eclipse,挺麻烦的,所以我就写了一个project search。
主要的用途就是search 一些project的配置文件和一些枚举类,这个比较常用
我用lucene 3.0.2的时候不熟,最近才开始了解,但是做个小的搜索还是可以的
我从google搜一个lucene,下载了一个最新的3.02版本的。然后从网上开始找源代码,发现网上的资料挺多的,但是好像都是老板本的,
我把这些代码迁移到我的eclipse工程下面,发现有很多错误的地方。
原来的建立文件索引的代码
现在建立文件索引的代码
而且基于seach的搜索代码也变化很大,下面这些代码已经没有了
取而代之的是
具体为什么要这么优化,我还不清楚,根据开源中国社区 [http://www.oschina.net]内容介绍
Lucene 2.9.3 是 2.x 分支的一个bug修复版本,Lucene 3.0.2 跟 2.9.3 一样修复了同一些bug,基于 Java 5。
新项目建议使用 Lucene 3.0.2 版本,因为它的 API 更加整洁而且类型安全。
同时该包含以下改进内容:
- 修复了 IndexWriter 进行大文档索引时的内存泄露问题
- NativeFSLockFactory fixes and improvements. Release write lock if exception occurs in IndexWriter ctors.
- FieldCacheImpl.getStringIndex() no longer throws an exception when term count exceeds doc count.
- 改进了 IndexReader 的并发性能
- Near real-time readers, opened while addIndexes* is running, no longer miss some segments.
- ParallelMultiSearcher 的性能提升 (3.0.2 only).
- IndexSearcher 不再抛出NegativeArraySizeException 异常,当你使用Integer.MAX_VALUE作为搜索文档数时
本文介绍了一个基于Lucene 3.0.2的小型文档检索工具开发过程。针对Eclipse中查找配置文件及参数速度慢的问题,作者实现了一款名为ProjectSearch的应用,用于快速搜索项目配置文件和枚举类。文中详细对比了不同版本Lucene在建立索引和搜索方面的代码差异。

1137

被折叠的 条评论
为什么被折叠?



