我想创建一个搜索引擎只是为了学习和获得更多的Java经验。Java中的搜索引擎?
我的意图是在服务器上存储大约100个文件,这些文件是html,xml,doc,txt的混合文件,并且每个文件都有元数据。
所以当我搜索一个关键字时,它应该显示一个带有其元描述的文件,如Google。
我的问题是,除了HTML,你可以添加元数据到任何其他文件格式,以便显示元描述。
您能否指向一个Java搜索引擎,可以在文件格式(txt,html)中搜索并显示结果。
我正在为自己的代码工作,但希望看看其他人的代码的一些帮助?
10
A
回答
26
Lucene是规范的Java搜索引擎。
要添加各种来源的文档,请查看Apache Tika以及具有服务/ Web界面的完整系统solr。
Lucene允许任意元数据与其文档相关联。 Tika将自动剔除各种格式的元数据。
4
1)我的问题是除html之外,你可以添加元数据到任何其他文件格式,以便显示元描述。
一般来说,您将使用数据库并将元数据与文档一起存储在那里。 然后,您可以使用数据库查询(可能使用SQL like或ilike)进行关键字搜索。
这些文件可能存储在硬盘上,只有路径在数据库中,或者作为CLOB或BLOB放入数据库,具体取决于您是否具有文本或二进制文档。
2)你能指向一个Java搜索引擎,它可以在文件格式(txt,html)中搜索并显示结果。
3
真的很好是Lucene。有很多的插件(这将允许例如从.DOC读),支持多国语言和大量的算法(如Levenshtein距离)
3
Apache Nutch is an open source web-search software project.
Nutch的基础上Lucene之上/ solr索引,tika解析文档,并添加自己的网络爬虫。
3
3
2
Apache Tika提取元数据。
Apache Tika Apache Tika工具包是ASFv2许可的开放源代码 从数字文档中提取信息的工具。 Tika允许 搜索引擎,内容管理系统和其他应用程序可以使用各种数字文档轻松检测并从所有主要文件格式中提取元数据和内容。
3
您将不得不使用多个库。首先,很多人之前提到可以使用Lucene来进行实际搜索。但是,Lucene只处理纯文本,所以你需要从你索引的文件中提取。 为此,您可以使用Apache Tika。
要开始,你应该买书Lucene in Action 2nd edition。那里的大多数例子仍然是最新的。如果你想成为一个小家伙,你也可以看看该页面提供的源代码。
相关问题
- 1. Java中的搜索引擎
- 2. Java搜索引擎调试
- 3. 使用AJAX搜索引擎在Chrome中搜索搜索引擎
- 4. Java中的搜索引擎算法?
- 5. 搜索引擎
- 6. 在java中构建搜索引擎
- 7. 搜索引擎中的倒排索引
- 8. JQGrid&搜索引擎索引
- 9. vb.net中的搜索引擎
- 10. eclipse中的搜索引擎
- 11. 在铬的Java文档搜索引擎
- 12. 在搜索引擎中自动搜索
- 13. 带搜索引擎的PHP搜索引擎
- 14. 嵌套分组/搜索引擎的搜索引擎
- 15. ASP.NET搜索引擎
- 16. php搜索引擎
- 17. mysql搜索引擎
- 18. Ember搜索引擎
- 19. php搜索引擎
- 20. PHP搜索引擎
- 21. 元搜索引擎
- 22. Filshts搜索引擎
- 23. Lucene.net搜索引擎
- 24. joomla搜索引擎
- 25. SQL搜索引擎
- 26. Mysql搜索引擎
- 27. Django:搜索引擎
- 28. PHP搜索引擎
- 29. 搜索引擎索引 - 任何替代PhantomJs快照的搜索引擎优化?
- 30. API搜索引擎 - 搜索引擎列表