springboot整合solr8(一)

栏目: Java · 发布时间: 5年前

内容简介:环境:先去官网下载solr:我这里下载的是zip的包,下载之后unzip命令解压得到下列文件:

环境: ubuntu18 + springboot2.0 + solr-8.0.0

第一部分 安装solr

先去官网下载solr: Index of /apache/lucene/solr/8.0.0

我这里下载的是zip的包,下载之后unzip命令解压得到下列文件:

springboot整合solr8(一)

进入bin目录,执行 sudo ./solr -start 命令,

这里可能遇到的错误有两个:

export JAVA_HOME='你的JDK路径'
-force参数

springboot整合solr8(一)

好吧,再次运行 sudo ./solr start -force ,运行成功。

springboot整合solr8(一)

solr的默认端口是 8983 ,打开浏览器输入 localhost:8983 ,可以看到solr已经可以访问了~

springboot整合solr8(一)

第二部分 创建核心(core),并导入 mysql 数据

选择左侧 CoreAdmin ,再选择 Add Core ,输入核心的名称和实例路径,后边三个默认就好。

springboot整合solr8(一)

点击Add Core提交信息,这里我遇到了一个错误信息,如下:

springboot整合solr8(一)

意思是在核心目录下找不到相应的配置文件,解决办法:将下图的conf文件夹cope到新创建的core目录下 /usr/local/solr-8.0.0/server/solr/new_core2

springboot整合solr8(一)

重新点击Add Core,创建成功~

springboot整合solr8(一)

接下来导入MySQL中的数据,我们会用到Solr自带的DIH(DataImportHandler)去进行数据导入。

这一步需要导入三个jar包( solr-dataimporthandler-8.0.0.jarolr-dataimporthandler-extras-8.0.0.jarmysql-connector-java-8.0.15.jar ),编辑三个文件( db-data-confg.xmlsolrconfig.xml 以及 managed-schema )。

导入jar包

进入到 /usr/local/solr-8.0.0/dist 目录,将 solr-dataimporthandler-8.0.0.jarsolr-dataimporthandler-extras-8.0.0.jar 复制到 /usr/local/solr-8.0.0/server/solr-webapp/webapp/WEB-INF/lib ,再去mvn仓库下载一个mysql-connector-java的包,也复制到这里。

编辑配置文件

  • 首先需要我们进入到 /usr/local/solr-8.0.0/example/example-DIH/solr/db/conf 目录,拷贝 db-data-config.xml 到我们刚才复制的conf文件夹内 /usr/local/solr-8.0.0/server/solr/new_core2/conf ,可以随意修改一个文件名,也可以用他默认的,如下,我改成了 mysql-db.xml :

springboot整合solr8(一)

编辑该文件 vim mysql-db.xml ,将原本的内容修改成我们自己的需求:

修改dateSource:

<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/dbname" user="root" password="" />

加入entity:

springboot整合solr8(一)

  • 接着退出,编辑另一个文件 solrconfig.xml ,添加如下信息:
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
      <str name="config">mysql-db.xml</str>
    </lst>
  </requestHandler>

mysql-db.xml 就是刚才copy的 db-data-config.xml 的文件名。

  • 保存退出,编辑 managed-schema ,加入
<!-- custom fields-->
<field name="title" type="string" indexed="true" stored="true"/>
<field name="content" type="string" indexed="true" stored="true"/> 
<field name="labels" type="string" indexed="true" stored="true"/>

保存 --> 退出 --> 重启solr, sudo ./solr restart -force

再次打开 localhost:8983 管理页面,选择新创建的核心 --> 选择 DateImport --> 选择 full-import 全量导入 --> 提交 --> 点击Refresh刷新,可以看到导入成功的提示:

springboot整合solr8(一)

至此,数据导入就完毕了!

之后的文章我们会加入中文分词以及如何在springboot项目中使用solr


以上所述就是小编给大家介绍的《springboot整合solr8(一)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大学程序设计课程与竞赛训练教材

大学程序设计课程与竞赛训练教材

吴永辉、王建德 / 机械工业出版社 / 2013-6 / 69.00

本书每章为一个主题,实验内容安排紧扣大学算法和数学的教学,用程序设计竞赛中的算法和数学试题作为实验试题,将算法和数学的教学与程序设计竞赛的解题训练结合在一起;在思维方式和解题策略的训练方面,以问题驱动和启发式引导为主要方式,培养读者通过编程解决问题的能力。 本书特点: 书中给出的234道试题全部精选自ACM国际大学生程序设计竞赛的世界总决赛以及各大洲赛区现场赛和网络预赛、大学程序设计竞......一起来看看 《大学程序设计课程与竞赛训练教材》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器