Lucene 5.3.xでBooleanQueryビルダーを使用する方法

inverted_index:

私はLuceneにほとんど慣れておらず、いくつかのクエリをANDして表示しようとしています。私はウェブ全体をググってみましたが、この問題の正しい解決策を見つけることができませんでした。ブールクエリ検索のソリューションにはBooleanQueryLuceneクラスが含まれますが、このクラスはLucene 5.3.1(私が使用しているクラス)では非推奨です。

これは私のコードの一部です:

public static void searchBooleanQuery(String indexDir, Query query1,
                                       Query query2, Query query3, Query query4) throws IOException {
    IndexReader rdr =  DirectoryReader.open(FSDirectory.open(Paths.get(indexDir)));
    IndexSearcher is = new IndexSearcher(rdr);
    BooleanQuery.Builder booleanQuery = new BooleanQuery.Builder();
    booleanQuery.add(query1, BooleanClause.Occur.MUST);
    booleanQuery.add(query2, BooleanClause.Occur.MUST);
    booleanQuery.add(query3, BooleanClause.Occur.MUST);
    booleanQuery.add(query4, BooleanClause.Occur.MUST);
}

更新

問題:私は表示できないBoolean QueryIndexSearcherとオブジェクトsearchこのクラス(IndexSearcher)の方法は、クエリによって渡される必要があります!したがって、以下を実行しようとするとエラーが発生します。

TopDocs hits = is.search(booleanQuery,10);
...
user1071777:

あなたのbooleanQueryオブジェクトは、実際のインスタンスであるBooleanQuery.Builder、ではありませんBooleanQuery

すべてのクエリをビルダーに追加したら、buildメソッドを呼び出す必要があります

TopDocs hits = is.search(booleanQuery.build(),10);

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Lucene 5.xxからStandardTokenizerを使用する方法

分類Dev

Lucene FrenchAnalyzerで最小長を3に設定する方法は?

分類Dev

LuceneでBooleanQuery.Builderを使用してBooleanQuery.combine

分類Dev

Lucene 3:StandardAnalyzerはどこにありますか?

分類Dev

Lucene MemoryIndex:Luceneフィールドを追加

分類Dev

Rで4X3および3X5ベクトルを使用して要素ごとにRを加算または乗算する方法

分類Dev

Canvasを使用してd3v4 / v5でスクロールをパンする方法

分類Dev

Vue3でp5.loadImageを使用する方法

分類Dev

LuceneからMultiFieldQueryParserを使用する方法

分類Dev

ionic 3(angular 5 + rxjs5)でAngularFireStoreを使用する

分類Dev

クエリビルダーでハッシュを使用すると、CakePHP 3.xになりますか?

分類Dev

TermVector Lucene 4.0の使用方法

分類Dev

ブートストラップ3モーダルでNavbarから新しいユーザーを追加するモーダルを作成する-Rails5

分類Dev

FSDirectoryを使用したLucene

分類Dev

ASP.NET MVC5とEntityFrameworkを使用してMP3ファイルをダウンロードする方法

分類Dev

Luceneに関する質問

分類Dev

Lucene 4でLuceneフィールドのすべての用語を取得する方法

分類Dev

lucene検索でフォルダーnodeRefを取得します

分類Dev

Alamofire 5.0.0-beta.3(Swift 5)を使用して画像(マルチパート)をアップロードする方法

分類Dev

行int *(*(x [3])())[5]; Cでやる?

分類Dev

AlfrescoでのLucene検索

分類Dev

Lucene5.5.2での説明

分類Dev

Processing3.xでシェーダーをモジュール化する方法

分類Dev

PyQt5でSQLite3テーブルをフィルタリングする方法

分類Dev

Laravelの雄弁なモデルLaravel5で3つのテーブルを結合する方法

分類Dev

統計ホルダーを作成するための適切な方法を5つのうち1つ、5つのうち3つ

分類Dev

D3 v5でCSVファイルからデータをロードする方法

分類Dev

Lucene6.2.0のCustomAnalayzerでSynonymMapを使用する方法

分類Dev

Lucene.Net4.8でHIGH_COMPRESSIONを使用する方法

Related 関連記事

  1. 1

    Lucene 5.xxからStandardTokenizerを使用する方法

  2. 2

    Lucene FrenchAnalyzerで最小長を3に設定する方法は?

  3. 3

    LuceneでBooleanQuery.Builderを使用してBooleanQuery.combine

  4. 4

    Lucene 3:StandardAnalyzerはどこにありますか?

  5. 5

    Lucene MemoryIndex:Luceneフィールドを追加

  6. 6

    Rで4X3および3X5ベクトルを使用して要素ごとにRを加算または乗算する方法

  7. 7

    Canvasを使用してd3v4 / v5でスクロールをパンする方法

  8. 8

    Vue3でp5.loadImageを使用する方法

  9. 9

    LuceneからMultiFieldQueryParserを使用する方法

  10. 10

    ionic 3(angular 5 + rxjs5)でAngularFireStoreを使用する

  11. 11

    クエリビルダーでハッシュを使用すると、CakePHP 3.xになりますか?

  12. 12

    TermVector Lucene 4.0の使用方法

  13. 13

    ブートストラップ3モーダルでNavbarから新しいユーザーを追加するモーダルを作成する-Rails5

  14. 14

    FSDirectoryを使用したLucene

  15. 15

    ASP.NET MVC5とEntityFrameworkを使用してMP3ファイルをダウンロードする方法

  16. 16

    Luceneに関する質問

  17. 17

    Lucene 4でLuceneフィールドのすべての用語を取得する方法

  18. 18

    lucene検索でフォルダーnodeRefを取得します

  19. 19

    Alamofire 5.0.0-beta.3(Swift 5)を使用して画像(マルチパート)をアップロードする方法

  20. 20

    行int *(*(x [3])())[5]; Cでやる?

  21. 21

    AlfrescoでのLucene検索

  22. 22

    Lucene5.5.2での説明

  23. 23

    Processing3.xでシェーダーをモジュール化する方法

  24. 24

    PyQt5でSQLite3テーブルをフィルタリングする方法

  25. 25

    Laravelの雄弁なモデルLaravel5で3つのテーブルを結合する方法

  26. 26

    統計ホルダーを作成するための適切な方法を5つのうち1つ、5つのうち3つ

  27. 27

    D3 v5でCSVファイルからデータをロードする方法

  28. 28

    Lucene6.2.0のCustomAnalayzerでSynonymMapを使用する方法

  29. 29

    Lucene.Net4.8でHIGH_COMPRESSIONを使用する方法

ホットタグ

アーカイブ