java - 如何使用 Solr 或 Searchable 搜索域对象及其指向的物理文件

标签 java grails full-text-search solr searchable

我有一个数字图书馆系统,我在其中存储元数据和数据库中物理文件的路径。文件可以是任何内容:纯文本、Word、PDF、MP3、JPEG、MP4...

如何为我的域对象和物理文件(或文件的某些文本提取)提供全文搜索。

我唯一的选择是将文档文本存储在域对象中吗?我确实需要能够检索域对象列表,无论搜索结果来自域对象还是物理文档。当然,存在使用文件路径的可能连接,并且我实际上将每个文档放入由 GUID 命名的文件夹中,因此连接就在那里。

我需要在 Grails 中执行此操作,最好使用 solr 或可搜索插件,但 Java 解决方案会有所帮助。

最佳答案

您不需要将内容存储在域对象中,只需在创建索引条目时将内容与域对象关联起来即可。我用过Apache POI提取我的内容,但还有更高级别的服务,例如 Apache Tika

你可以使用Lucene在java中对其进行编码直接但我建议 SOLR相反

grails searchable plugin基于Compass这是基于 Lucene

关于java - 如何使用 Solr 或 Searchable 搜索域对象及其指向的物理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4000973/

相关文章:

Java 线程处理与 walkFileTree

grails - 具有逻辑OR的Grails可搜索插件

grails - 对访问域对象Grails的属性感到困惑

json - 如何在 Grails 中为 JSON 转换器设置日期格式

ipad - 使用 Quartz 2D 在 iPad 上进行 Pdf 全文搜索

sql-server - 多个表上的 SQL 2008 全文搜索目录

java - 如何让 IntelliJ 识别 Play Framework *.scala.xml 模板

java - 在 Java 中查找数组中最接近 32 的数字的索引号

javascript - 如何在javascript和servlet之间发送和接收json数据?

django - postgresql 全文搜索查询到 django ORM