public class EDisMaxExQParserPlugin extends QParserPlugin
ExtendedDismaxQParserPlugin
の拡張クラスで、クエリ文字列中にユーザ辞書(dic)に記載したキーワードがあるか調べ、ある場合は
その単語をfieldsで指定したフィールドにあてるdismaxクエリを作成し、本体のedismaxのBooleanClause
に付与する。
remove(デフォルトはfalse)にtrueが指定されたときは、本体のクエリから当該辞書中のキーワード文字列を取り除く(半角スペースで置き換える)。
<queryParser name="edismaxEx" class="com.rondhuit.solr.search.EDisMaxExQParserPlugin"> <lst name="person"> <str name="dic">people.txt</str> <bool name="remove">true</bool> <str name="fields">speaker^3 title</str> </lst> <lst name="location"> <str name="dic">locations.txt</str> <str name="fields">statement^2 title</str> </lst> </queryParser>
修飾子とタイプ | クラスと説明 |
---|---|
static class |
EDisMaxExQParserPlugin.DicFields |
SolrInfoBean.Category, SolrInfoBean.Group
修飾子とタイプ | フィールドと説明 |
---|---|
static boolean |
IGNORE_CASE |
static java.lang.String |
NAME |
DEFAULT_QTYPE, standardPlugins
コンストラクタと説明 |
---|
EDisMaxExQParserPlugin() |
修飾子とタイプ | メソッドと説明 |
---|---|
QParser |
createParser(java.lang.String qstr,
org.apache.solr.common.params.SolrParams localParams,
org.apache.solr.common.params.SolrParams params,
SolrQueryRequest req) |
java.util.List<EDisMaxExQParserPlugin.DicFields> |
getDicFields() |
void |
init(org.apache.solr.common.util.NamedList args) |
static java.util.Map<java.lang.String,java.lang.Long> |
merge(java.util.Map<java.lang.String,java.lang.Long> map,
java.util.Set<DictionaryUtil.DictionaryEntry> s2) |
getCategory, getDescription, getMetricNames, getName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getMetricRegistry, getMetricsSnapshot, registerMetricName
public static final java.lang.String NAME
public static final boolean IGNORE_CASE
public java.util.List<EDisMaxExQParserPlugin.DicFields> getDicFields()
public void init(org.apache.solr.common.util.NamedList args)
init
インタフェース内 NamedListInitializedPlugin
init
クラス内 QParserPlugin
public static java.util.Map<java.lang.String,java.lang.Long> merge(java.util.Map<java.lang.String,java.lang.Long> map, java.util.Set<DictionaryUtil.DictionaryEntry> s2)
public QParser createParser(java.lang.String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest req)
createParser
クラス内 QParserPlugin
Copyright © 2009-2018 RONDHUIT Co.,Ltd. All Rights Reserved.