私はWebベースのアプリケーションでLucene検索APIを使用しています。 LuceneのIndexSearcherクラスのどのメソッドを使用することをお勧めしますか?推奨するIndexSearcherメソッドはありますか?
1.IndexSearcher(Directoryディレクトリ) 2.IndexSearcher(IndexReader R) 3.IndexSearcher(文字列のパス)読書のための
感謝。
私はWebベースのアプリケーションでLucene検索APIを使用しています。 LuceneのIndexSearcherクラスのどのメソッドを使用することをお勧めしますか?推奨するIndexSearcherメソッドはありますか?
1.IndexSearcher(Directoryディレクトリ) 2.IndexSearcher(IndexReader R) 3.IndexSearcher(文字列のパス)読書のための
感謝。
内部的にインデックスへのディレクトリとパスを受け取るコンストラクタは、IndexReaderをaccpetsするコンストラクタを使用します。したがって、他のものに比べてパフォーマンス上の利点はありません。 IndexReaderでサーチャーを作成する場合は、サーチャーを終了した後で明示的にリーダーを閉じる必要があります。
すべてが便利です。
IndexSearcher
を作成する場合は、パスを受け入れるものを使用します。
すでにDirectory
オブジェクトがある場合は、Directory
を受け入れるものを使用してください。
あなたがIndexReader
を持っていると...あなたはポイントを得る。 IndexReader
を入力した場合は、IndexSearcher
を閉鎖した後に閉鎖することになります。
Lucene source codeのコピーを取得することを強くお勧めします。非常に読みやすく、これらの質問に多く答えることができます。
この回答にお答えください。 http://stackoverflow.com/questions/899542/problem-using-same-instance-of-indexsearcher-for-multiple-requests –