Solr4.7如何实现智能提示

技术solr4.7智能提示怎么实现这篇文章主要介绍“solr4.7智能提示怎么实现”,在日常操作中,相信很多人在solr4.7智能提示怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”

这篇文章主要介绍“solr4.7智能提示怎么实现",在日常操作中,相信很多人在solr4.7智能提示怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答“solr4.7智能提示怎么实现"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

solrconfig.xml配置:

搜索组件名=' improve ' class=' Solr ."拼写检查组件"

!-strname=' querylyzerfieldtype ' text _ general/str-

lstname='拼写检查器'

strname='name '建议/str

strname=' class name ' org。阿帕奇。索尔。拼写。暗示。暗示者/str

strname=' lookupImpl ' org。阿帕奇。索尔。拼写。建议。tst。tstlookp/str

strname='field'text/str

floatname="阈值“0.0001/浮动

strname=' comparatorClass ' freq/str

strname=' BuildOnOptimize ' true/str

strname=' buildOnCommit ' true/str

/lst

/searchComponent

request handler name='/improve ' class=' Solr ." SearchHandler "

lstname="默认值"

strname="拼写检查" true/str

strname='spellcheck.dictionary '建议/str

s

tr name="spellcheck.count">10</str>    
        <str name="spellcheck.onlyMorePopular">true</str>  
        <str name="spellcheck.extendedResults">false</str>        
        <str name="spellcheck.collate">true</str>  
        <!--<str name="spellcheck.build">true</str>  -->    
    </lst>    
    <arr name="components">    
        <str>suggest</str>    
    </arr>    
  </requestHandler>

 solrj代码:

/**
    * @method: spellcheck
    * @Description: 智能提示
    *     Solr里叫做Suggest模块
    *    
    * @return void
    *
    * @author: ChenYW
    * @date 2014-4-15 下午04:29:24
    */
 public List<Map<String, String>> suggest(String word) {
  List<Map<String, String>> wordList = new ArrayList<Map<String, String>>();
     try {
   SolrQuery query = new SolrQuery();
   query.set("q", "text:" + word);//查询的词  
   query.set("qt", "/suggest");//请求到suggest中  
   query.set("spellcheck.count", "10");//返回数量  
   QueryResponse rsp = server.query(query);

   //上面取结果的代码  
   SpellCheckResponse re = rsp.getSpellCheckResponse();//获取拼写检查的结果集  
   if (re != null) {
    for (Suggestion s : re.getSuggestions()) {
     List<String> list = s.getAlternatives();//获取所有 的检索词  
     for (String spellWord : list) {
      Map<String, String> map = new HashMap<String, String>();
      map.put("code", spellWord);
      wordList.add(map);
     }
    }
    String t = re.getFirstSuggestion(word);//获取第一个推荐词  

   }
  } catch (Exception e) {
   e.printStackTrace();
  }  
  return wordList;
    }

到此,关于“solr4.7智能提示怎么实现”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/155612.html

(0)

相关推荐

  • 怎么关掉springsecurity(spring security 关闭默认拦截)

    技术如何解决SpringSecurity自定义AuthenticationProvider无法@Autowire的问题这篇文章主要介绍了如何解决SpringSecurity自定义AuthenticationProvide

    攻略 2021年12月20日
  • 数据库中必要的建表权限有哪些

    技术数据库中必要的建表权限有哪些这篇文章主要为大家展示了“数据库中必要的建表权限有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“数据库中必要的建表权限有哪些”这篇文章吧。

    攻略 2021年11月11日
  • 飞机商务舱和头等舱区别,飞机舱位等级有什么区别

    技术飞机商务舱和头等舱区别,飞机舱位等级有什么区别等级不同:头等舱(舱位代码为F)飞机商务舱和头等舱区别,公务舱(舱位代码为C),经济舱(舱位代码为Y)。2、服务层次不同:头等舱服务最为细致,餐饮提供的比较精致,酒水提供

    生活 2021年10月27日
  • 貔貅的摆放,家里的一对貔貅怎么摆图片

    技术貔貅的摆放,家里的一对貔貅怎么摆图片摆放貔貅是有一定的方法和讲究的貔貅的摆放,正确的摆放能够让貔貅更好的来招财和辟邪镇宅。 貔貅是传说中的神兽,从古至今都被很多人所喜欢和追崇。貔貅嘴大无肛,形象威风霸气,专门的吞食金

    生活 2021年10月26日
  • JQuery怎么删除UL最后一个li

    技术JQuery怎么删除UL最后一个li本篇内容主要讲解“JQuery怎么删除UL最后一个li”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JQuery怎么删除UL最后一个l

    2021年11月17日
  • 设定Oracle用户名密码的规则有哪些

    技术设定Oracle用户名密码的规则有哪些这篇文章主要讲解了“设定Oracle用户名密码的规则有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“设定Oracle用户名密

    攻略 2021年11月5日