• solr高亮的使用


    今天要说的是关于solr的高亮设置,我一直认为solr的高亮设置封装的还是有一些麻烦的,所以,现在说说到底要怎么用它。

    入正题:

    1》首先看SolrQuery类,此类有方法setHighlight(true),当设置为true时,表示开启了高亮

    2》 还是SolrQuery类,看方法
       
    Java代码
    1. // 以下给两个字段开启了高亮,分别是name,description,  
    2. query.addHighlightField("name");   
    3. query.addHighlightField("description");   
    4. // 以下两个方法主要是在高亮的关键字前后加上html代码  
    5. query.setHighlightSimplePre("<font color=\"red\">");   
    6. query.setHighlightSimplePost("</font>");   
        // 以下给两个字段开启了高亮,分别是name,description,     query.addHighlightField("name");      query.addHighlightField("description");      // 以下两个方法主要是在高亮的关键字前后加上html代码     query.setHighlightSimplePre("<font color=\"red\">");      query.setHighlightSimplePost("</font>"); 


    3》//下面是获取高亮的内容
    Java代码
    1. Map<String,Map<String,List<String>>> map = response.getHighlighting();   


    Map的Key为document的Id,即你在schema.xml中设置的Id,Value为该Id对应的document的值,请听下面分 解,Value也为一个Map,该Map的Key为fieldName,Value为List<String>,这个List里面的内容该文 档的高亮字段。

    所以当做逻辑处理的时候,只要按照这个层次,依次把东西给取出来即可,如果取出来的东西为空,则用QueryResponse中的SolrDocument的getFieldValue(filedName)的值。


    对了,请注意在solrConfig.xml中开启高亮组件,这个可以看看官方wiki或者看solrconfig.xml中注释!
  • 相关阅读:
    .NET 内存分配笔记
    MYSQL知识点
    NOPI导入导出
    【链接】各类学习资源
    【原创】重绘winform的GroupBox
    高仿淘宝滑动验证码插件
    Winform窗体控件级权限处理
    .NET中的Func委托用法
    关于IBatisNet的配置文件中数据库连接字符串加密处理
    Oracle连接字符串大全
  • 原文地址:https://www.cnblogs.com/wycg1984/p/1681597.html
Copyright © 2020-2023  润新知