zoukankan      html  css  js  c++  java
  • Solr Suggest 配置

    1.配置

    <searchComponent  name="suggest" class="solr.SpellCheckComponent">

        <str name="queryAnalyzerFieldType">string</str>

        <lst name="spellchecker">

            <str name="name">suggest</str>

            <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>

            <str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookup</str>

            <str name="field">text</str>

            <float name="threshold">0.0001</float>

            <str name="spellcheckIndexDir">spellchecker</str>

            <str name="comparatorClass">freq</str>

            <str name="buildOnOptimize">true</str>

            <!--<str name="buildOnCommit">true</str>-->

        </lst>

    </searchComponent>

    <requestHandler  name="/suggest" class="solr.SearchHandler" startup="lazy">

        <lst name="defaults">

            <str name="spellcheck">true</str>

            <str name="spellcheck.dictionary">suggest</str>

            <str name="spellcheck.onlyMorePopular">true</str>

            <str name="spellcheck.extendedResults">false</str>

            <str name="spellcheck.count">10</str>

            <str name="spellcheck.collate">true</str>

        </lst>

        <arr name="components">

            <str>suggest</str>

        </arr>

     </requestHandler>

     
     
    /suggest?q=....
     
    public JsonResult SolrSuggest(string text)
            {
                List<string> list=new List<string>();
                var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Product>>();
                var results = solr.Query(text, new QueryOptions()
                {
                    SpellCheck = new SpellCheckingParameters(){Collate = true}
                });
                foreach (var item in results.SpellChecking)
                {
                    foreach (var sc in item.Suggestions)
                    {
                        list.Add(sc);
                    }
                }
                return Json(list, JsonRequestBehavior.AllowGet);
            }
  • 相关阅读:
    Codeforces 960B(优先队列)
    “景驰科技杯”2018年华南理工大学程序设计竞赛 H-对称与反对称(逆元)
    AcWing
    POJ
    POJ
    AtCoder
    HRBUST
    CodeForces
    HYSBZ
    HDU
  • 原文地址:https://www.cnblogs.com/steben/p/3808194.html
Copyright © 2011-2022 走看看