是否可以仅对它的注释使用休眠搜索(bean => 文档/文档 => bean 映射),而根本不使用数据库?如果是这样,是否有任何在线示例基本上显示了如何设置?
我发现了以下内容:http: //mojodna.net/2006/10/02/searchable-annotation-driven-indexing-and-searching-with-lucene.html,但如果它支持我的使用,我更喜欢hibernate-search案子。
是否可以仅对它的注释使用休眠搜索(bean => 文档/文档 => bean 映射),而根本不使用数据库?如果是这样,是否有任何在线示例基本上显示了如何设置?
我发现了以下内容:http: //mojodna.net/2006/10/02/searchable-annotation-driven-indexing-and-searching-with-lucene.html,但如果它支持我的使用,我更喜欢hibernate-search案子。
Starman 是正确的,3.4 版中的 Hibernate Search 正在从 Hibernate Core 中抽象出搜索引擎,而 Infinispan Query 是一个集成示例,无需数据库即可正常工作。Spring 也没有问题,但是您需要确保将更新事件发送到查询引擎,以便索引不会不同步。使用 Hibernate 的优点是它透明地侦听数据库的更改并将它们应用于事务提交时的索引,因此索引始终保持同步(或关闭,如果将搜索配置为使用异步后端)。
我建议查看 Infinispan Query 的代码,因为它非常小,并且只是委派调用以公开Infinispan 风格的 API。大多数代码是测试或集成,以正确管理引擎的生命周期:与 Infinispan 一起启动和停止它。
Hibernate search 3.4 将查询引擎与 Hibernate Core 分离。例如,Hibernate Search 被重用于使用 Infinispan 实现查询。我不知道代码是否已打包以便您可以使用 HS,比如说 Spring 和 JDBCTemplate(我想做的事情)。这是我稍后会调查的线索,但也许你可以检查一下......
我认为这是不可能的,因为当您启用 Hibernate 搜索时,您将在实体上启用它,并且该实体具有对表和搜索索引的引用。