lucene 多个 filter 怎么同时过滤?
答案:1 悬赏:0
解决时间 2021-01-17 18:31
- 提问者网友:眉目添风霜
- 2021-01-16 17:50
lucene 多个 filter 怎么同时过滤?
最佳答案
- 二级知识专家网友:我住北渡口
- 2021-01-16 19:09
BooleanQuery booleanQuery = new BooleanQuery();
booleanQuery.add(new BooleanClause(NumericRangeQuery.newIntRange("age", 18, Integer.MAX_VALUE, true, true), BooleanClause.Occur.MUST));
booleanQuery.add(new BooleanClause(new TermQuery(new Term("sex", "男")), BooleanClause.Occur.MUST));
Filter filter = new QueryWrapperFilter(booleanQuery);
searcher.search(query, filter, 20);
//用的是lucene 4.10.3追问1 filter有什么特殊的用处吗? 为什么条件不直接写在query里,而有时要写在filter里?
booleanQuery.add(new BooleanClause(NumericRangeQuery.newIntRange("age", 18, Integer.MAX_VALUE, true, true), BooleanClause.Occur.MUST));
booleanQuery.add(new BooleanClause(new TermQuery(new Term("sex", "男")), BooleanClause.Occur.MUST));
Filter filter = new QueryWrapperFilter(booleanQuery);
searcher.search(query, filter, 20);
//用的是lucene 4.10.3追问1 filter有什么特殊的用处吗? 为什么条件不直接写在query里,而有时要写在filter里?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯