最近想做一个java相关的项目,系统下有许多world文档或者其他文档,然后实现一个程序,可以输入某个关键字可以查询包含该关键词的文档。希望是秒级别的。现在懂java相关的知识,大神可以提供一下解决该问题思路,不是java相关的也可以。
分为几个步骤
首先是读取word文档和md文档。md文档就是文本,word用poi之类的库
中文文档,还需要分词
然后用Lucene,建立反向索引
然后就可以搜索了。
1.可以先通过java调用系统命令;
2.然后获取到文档的名称
3.将获取到的名称存入一个集合中
4.然后对该集合进行拆分
5.通过多线程匹配关键词
我现在的想法大概是这样的,当上传文档时,会把里面的内容存储到elasticsearch上,然后通过elaticsearch来实现对关键词的快速获取。不知道这样的想法可行吗?
回复郝刚1: 那就获取到文档的路径,然后通过io读取文档的内容,然后进行关键词匹配,不过数量多的话就涉及到算法了.你需要了解一下相关的知识