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

时间:2016-06-19 07:35:36

标签: java lucene booleanquery

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

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

if (cEventStatus) {
    NSLog(@"YES status");
}else{
    NSLog(@"NO status");
}

if (ddayDif > 0) {
    NSLog(@"greater than 0");
}else{
   NSLog(@"less than 0");
}

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

1 个答案:

答案 0 :(得分:21)

BooleanQuery现在是不可变的(你可以阅读Migration guide和链接的JIRA问题的变化)。

相反,您现在可以使用BooleanQuery.Builder

BooleanQuery booleanQuery = new BooleanQuery.Builder()
    .add(query1, BooleanClause.Occur.MUST)
    .add(query2, BooleanClause.Occur.MUST)
    .build();