solr服务器配置与tomcat整合

假装没事ソ 提交于 2019-12-06 05:48:23

最近找了视频学习lucene和solr,记一下怎么配置solr

JDK使用的为1.7,如果用1.6貌似会提示版本低

先下载solr3.5和mmseg4j1.8.5的压缩包,下载链接在底部

解压solr3.5,解压后目录结构为

在D盘新建一个目录,名称为solr(看自己意思,位置和目录名没有特定要求),然后在里面创建两个目录名称分别为home和server,然后将example目录下的solr文件夹下的所有文件复制到新建的home目录下,再将example目录下webapps目录中的solr.war解压

然后将解压后的solr目录移动到server目录中

这时候再修改home目录中conf下的solrconfig.xml文件,将dataDir节点中的值改为${solr.data.dir:D:\solr\home\data}

接着找到tomcat目录,修改server.xml添加虚拟路径

<Context path="/solr" docBase="D:\solr\server\solr" reloadable="false">
  <Environment name="solr/home" type="java.lang.String" value="D:\solr\home" override="true" />
</Context>

下一步取消VelocityResponseWriter输出,否则启动时会报异常,如果想用的话把jar加上就行了,修改solrconfig.xml

现在开始加入中文分词,mmseg4j1.8.5压缩包中的mmseg4j-all-1.8.5.jar和mmseg4j-solr-1.8.5.jar放到D:\solr\server\solr\WEB-INF\lib目录中

在D:\solr\home中再创建一个dic 目录,用来存放分词字典,将mmseg4j1.8.5自带的四个扩展名为dic的文件复制到此目录即可

然后修改schema.xml文件

将原来的xml中的这几个结点中的dicPath改为dic,如果没有这些节点复制过去即可

<fieldType name="textComplex" class="solr.TextField" >
    <analyzer>
        <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="dic"/>
    </analyzer>
    </fieldType>
	<fieldType name="textMaxWord" class="solr.TextField" >
      <analyzer>
        <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word" dicPath="dic"/>
      </analyzer>
    </fieldType>
	<fieldType name="textSimple" class="solr.TextField" >
      <analyzer>
        <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="dic"/>
      </analyzer>
    </fieldType>


到现在基本的配置已经完成,开始启动tomcat进行测试

在浏览器输入http://localhost:8080/solr/admin/

点击这里画线的地方,跳转到分词器测试页面

将Field改为Type

然后在右边的文本框中输入text_general

点击按钮后会在下方显示出分词结果,会发现自带的分词器在对中文分词时是按单字来分的,并不是按词来分

接着将text_general改为textComplex再进行测试,分词的时候就是按中文词语来分了

注意:text_general和textComplex都是在sechma.xml配置好的分词器,并不是随便添的


下载链接:

solr3.5:http://pan.baidu.com/s/1xwry2

mmseg4j1.8.5:http://pan.baidu.com/s/1pJHoA2f

视频链接:http://pan.baidu.com/s/1i3vMhtr


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!