1

データベースをまったく使用せずに、アノテーション(bean => document / document => beanマッピング)に対してのみhibernate-searchを使用することは可能ですか?もしそうなら、基本的にこれを設定する方法を示すオンラインサンプルはありますか?

私は次のことを見つけました:http://mojodna.net/2006/10/02/searchable-annotation-driven-indexing-and-searching-with-lucene.html、しかしそれが私の使用をサポートするなら私はhibernate-searchを好むでしょう場合。

4

3 に答える 3

2

Starmanは正しく、バージョン3.4のHibernateSearchはHibernateCoreから検索エンジンを抽象化しており、InfinispanQueryはデータベースがなくても正常に機能する統合例です。Springでも問題はありませんが、インデックスが同期しなくなることがないように、必ず更新イベントをクエリエンジンに送信する必要があります。Hibernateを使用する場合の利点は、データベースへの変更を透過的にリッスンし、トランザクションコミット時にインデックスに適用するため、インデックスが常に同期している(または、非同期バックエンドを使用するように検索を構成している場合は閉じる)ことです。

Infinispanクエリのコードは非常に小さく、呼び出しを委任してInfinispanフレーバーのAPIを公開するだけなので、コードを調べることをお勧めします。コードのほとんどは、エンジンのライフサイクルを適切に管理するためのテストまたは統合です。Infinispanと一緒にエンジンを開始および停止します。

于 2011-05-11T12:42:31.087 に答える
2

Hibernate search 3.4は、クエリエンジンをHibernateCoreから切り離しました。たとえば、Hibernate Searchは、Infinispanでクエリを実装するために再利用されます。HSを使用できるようにコードがパッケージ化されているかどうかはわかりません。たとえば、SpringとJDBCTemplate(私がやりたいこと)を考えてみましょう。それは後で調査するリードですが、多分あなたはそれをチェックすることができます...

于 2011-04-29T17:23:20.733 に答える
1

Hibernate検索を有効にすると、エンティティでそれが有効になり、そのエンティティがテーブルと検索インデックスへの参照を持っているため、それは不可能だと思います。

于 2011-03-10T04:54:46.007 に答える