Java 不使用Lucene建立文件索引

Java 不使用Lucene建立文件索引,java,indexing,Java,Indexing,我只是想建立一个小的索引文件系统(超过3000个文本文件,超过5 GB)。我已经从谷歌或其他地方搜索了结果,但没有得到我想要的。所有的结果都与Lucene有关,但我只想在没有任何第三个库的情况下完成,你能给我一些建议或例子吗?一个非常基本的解决方案可能是使用反向索引。在这里,您可以读取所有要编制索引的文档,并将找到的单词作为键存储在映射中,其值是包含这些单词的文档列表 文件1 这是一个示例文档 文件2 这是第二份文件 你的地图会有 this -> doc1, doc2 is -> d

我只是想建立一个小的索引文件系统(超过3000个文本文件,超过5 GB)。我已经从谷歌或其他地方搜索了结果,但没有得到我想要的。所有的结果都与Lucene有关,但我只想在没有任何第三个库的情况下完成,你能给我一些建议或例子吗?

一个非常基本的解决方案可能是使用反向索引。在这里,您可以读取所有要编制索引的文档,并将找到的单词作为键存储在映射中,其值是包含这些单词的文档列表

文件1

这是一个示例文档

文件2

这是第二份文件

你的地图会有

this -> doc1, doc2
is -> doc1, doc2
an -> doc1
example -> doc1
document -> doc1, doc2
number -> doc2
two -> doc2

如果使用DB,则可以执行类似于基于标记的实现(文档和标记之间的多对多关系)的操作。不幸的是,然后你必须做所有的工作,例如lucene(像NLP)来获得好的结果。你为什么不想使用第三方库呢?这是一个庞大的话题,而且很难简明扼要地回答。一个像样的答案对于这样的问答网站来说太大了。相反,您应该阅读有关索引和搜索的主题。看看众所周知的索引是如何工作的,或者阅读关于搜索索引的wiki文章。对你们来说,使用现有的第三方库比重新发明轮子要容易得多。我们不使用第三方库。我只想建立一个小库。只需拆分关键词,然后使用反向索引,最后就可以进行搜索。你们能给我举个例子吗?你们说的只是我想做的,但我不知道如何认识到这一点。你有相关的例子吗?