zoukankan      html  css  js  c++  java
  • solr8.6添加中文分词器

    1.添加solr8 自带分词工具
    (1)在solr安装文件夹下面找到这个lucene-analyzers-smartcn-8.6.0.jar包


    (2)复制一份到 D:solr-8.6.0serversolr-webappwebappWEB-INFlib 这个目录下面


    (3)接下来在你的项目conf下的配置文件managed-schema添加以下配置

    <!-- ChineseAnalyzer 自带的中文分词器 -->
    <fieldType name="solr_cnAnalyzer" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
    <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
    </analyzer>
    <analyzer type="query">
    <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
    </analyzer>
    </fieldType>

    这样就配置好了类型名称是 solr_cnAnalyzer 的分词器。

    2.外部分词器配置
    (1)先下载solr8版本的ik分词器,下载地址:https://search.maven.org/search?q=com.github.magese


    (2)将下载好的jar包放入solr-7.3.0/server/solr-webapp/webapp/WEB-INF/lib目录中



    (3)接下来在你的项目conf下的配置文件managed-schema添加以下配置

    <!-- ik分词器 -->
    <fieldType name="text_ik" class="solr.TextField">
    <analyzer type="index">
    <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
    <analyzer type="query">
    <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
    </fieldType>

    3.给需要做分词的的字段指定分词器

     我给 name 字段指定了 solr_cnAnalyzer 分词器、content字段指定了 text_ik 分词器,其中 type 就是上面分词器的name值。

    注意:indexed="true",solr默认下content这个字段的indexed的值是false,需要改成true,在搜索时这个字段才能用到上面的分词器。

    <field name="name" type="solr_cnAnalyzer" indexed="true" stored="true"/>
    <field name="content" type="text_ik" multiValued="true" indexed="true" stored="true"/>

    4.配置完成后重启一次solr服务

     

     再次刷新http://localhost:8983/solr页面

    (1)选择test-> Analysis -> 选择分词器 content 输入 "黑夜给了我黑色的眼睛",点击"Analyse Values"按钮可以看到结果已经分词成功了。

     

    (2)选择test-> Analysis -> 选择分词器 name 输入 "黑夜给了我黑色的眼睛",点击"Analyse Values"按钮可以看到结果已经分词成功了。

  • 相关阅读:
    java编码规范
    Unix操作系统内核结构报告
    vim常用命令组合
    JavaWeb学习笔记13--Servlet开发(二)
    JavaWeb学习笔记12--Servlet开发(一)
    JavaWeb学习笔记11--JSTL标签库
    JavaWeb学习笔记10--Cookie实现记住密码的功能
    JavaWeb学习笔记9--JSP属性范围
    JavaWeb学习笔记8--JSP内置对象详解
    JavaWeb学习笔记7--JSP脚本元素、指令元素、动作元素
  • 原文地址:https://www.cnblogs.com/wjs2019/p/14048033.html
Copyright © 2011-2022 走看看