• ik扩展支持Solr配置


    扩展ik原生代码:
    public class IKAnalyzerTokenizerFactory extends TokenizerFactory
    {
    private boolean useSmart;

    public boolean useSmart()
    {
    return this.useSmart;
    }

    public void setUseSmart(boolean useSmart) {
    this.useSmart = useSmart;
    }

    public IKAnalyzerTokenizerFactory(Map<String, String> args) {
    super(args);
    assureMatchVersion();
    setUseSmart(((String)args.get("useSmart")).toString().equals("true"));
    }

    public Tokenizer create(AttributeSource.AttributeFactory factory, Reader input)
    {
    Tokenizer _IKTokenizer = new IKTokenizer(input, this.useSmart);
    return _IKTokenizer;
    }
    }

    将ik重新打包,solr中配置信息如下:

    <fieldType name="text_ik" class="solr.TextField">
    	<analyzer type="index">
    			<tokenizer class="org.wltea.analyzer.lucene.IKAnalyzerTokenizerFactory" useSmart="false"/>
    			<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    			<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
    		</analyzer> 
    		<analyzer type="query">
    			<tokenizer class="org.wltea.analyzer.lucene.IKAnalyzerTokenizerFactory" useSmart="true"/>
    			<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    			<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
    		</analyzer>
    </fieldType>
    

      

  • 相关阅读:
    Mysql 之 编码问题
    Mysql Basic
    CentOS 之 Sublime text3 安装
    mapper映射
    端口号占用
    2020系统综合实验 第7次实践作业
    2020系统综合实验 第6次实践作业
    解决github打开速度慢问题
    2020系统综合实践 第5次实践作业
    2020系统综合实验 第4次实践作业
  • 原文地址:https://www.cnblogs.com/likehua/p/4608166.html
Copyright © 2020-2023  润新知