我正在为Lucene中的Query创建一个自定义的Weight类,但是我必须重写方法explain,该方法返回一个解释对象。我尝试创建一个,但是,唯一的构造函数是私有的。我在文档中进行搜索,并且有一个静态方法创建一个解释,但这至少需要另一个解释。然后如何创建解释?我的Lucene当前版本是5.5.2。
该Explanation.match
和Explanation.noMatch
是正确的方法,以在看。该Explanation...
参数是孩子解释节点。如果您的解释中没有孩子,请不要通过任何一个孩子:
Explanation.match(floatScore, "mySimpleScore");
对于一个相对简单的实际示例,这是ConstantScoreWeight构造它的解释的方式,其中“ boost”和“ queryNorm”节点没有子节点:
return Explanation.match(
queryWeight, getQuery().toString() + ", product of:",
Explanation.match(boost, "boost"), Explanation.match(queryNorm, "queryNorm"));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句