文章目录
1、solr7.4下载地址
http://www.apache.org/dyn/closer.lua/lucene/solr
2、JDK
需要JDK1.8及以上,自带Jetty,因此不需要Tomcat
3.启动solr
进入solr的安装目录,运行: bin/solr.cmd start,solr默认端口为8983
4.浏览器访问solr管理员界面
访问:http://localhost:8983/solr/
5、solr使用
①创建core
- 命令行执行:solr.cmd create -c articles。其中articles是core的名称,可以自定义。
- 重启solr:solr.cmd restart -p 8983 查看core:浏览器访问solr管理员界面,点击"Core Admin",列表中出现"articles",说明core创建成功
②分词
1. 基本使用
测试分词,选择刚才创建的core,点击Analysis进入分词分析页面,输入要分词的句子,选择分词库,点击分析按钮,即可看到分词结果
2. 中文分词
solr默认不支持中文分词,需要安装插件
solr自带的中文插件(不一定好用)
1、添加中文分词插件:solr 7.4中自带中文分词插件,将solr7.4\contrib\analysis-extras\lucene-libs\lucene-analyzers-smartcn-7.4jar复制到solr7.4\server\solr-webapp\webapp\WEB-INF\lib目录中
2、配置中文分词,修改 solr7.4\server\solr\articles【创建的core的名称】\conf\managed-schema文件,添加中文分词
<!-- Chinese -->
<fieldType name="text_cn" 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>
搜索Italian,在Italian下添加我们的中文配置:
3、重启solr,测试中文分词
ik分词器(比较好用)
由于solr自带的中文分词并不一定好使,使用ikanalyzer分词
1.先下载solr7版本的ik分词器,下载地址:http://search.maven.org/#search|ga|1|com.github.magese
分词器GitHub源码地址:https://github.com/magese/ik-analyzer-solr7
2.将下载好的jar包放入solr-7.4.0/server/solr-webapp/webapp/WEB-INF/lib目录中
3.然后到server/solr/articles/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>
4.重启solr:solr.cmd -p 8983 restart