Lucene 6.0!如何实例化BooleanQuery并在其中添加其他搜索查询?

Moh*_*Ali 9 java lucene booleanquery

如何在Lucene 6.x中实例化BooleanQuery?如何使用布尔查询在其中添加其他查询?

在Lucene 4.x中,我们使用BooleanQuery如下:

    BooleanQuery booleanQuery = new BooleanQuery();
    booleanQuery.add(query1, BooleanClause.Occur.MUST);
    booleanQuery.add(query2, BooleanClause.Occur.MUST);
Run Code Online (Sandbox Code Playgroud)

如何在Lucene 6中实现这一目标.

fem*_*gon 22

BooleanQuery现在是不可变的(您可以阅读有关迁移指南和链接的JIRA问题的更改).

相反,您现在将使用BooleanQuery.Builder:

BooleanQuery booleanQuery = new BooleanQuery.Builder()
    .add(query1, BooleanClause.Occur.MUST)
    .add(query2, BooleanClause.Occur.MUST)
    .build();
Run Code Online (Sandbox Code Playgroud)