03_Solr之dataimport

03_Solr之dataimport

        solr的主要核心还是数据,那么如何将数据库中的我们需要通过solr分析的数据导入到solr中呢?接下来我们将来学习如何通过配置文件的方式,获取数据库的数据,并导入solr。

这里使用的是mysql测试。

1、先在mysql中建一个库:solr

    03_Solr之dataimport

常见一张表,命名为products,表结构如下:

03_Solr之dataimport

2、插入一些测试数据:

03_Solr之dataimport

做好准备工作之后,接下来我们就开始进行solr的链接数据库的相关配置:

想要通过配置文件连接数据库,就要有数据库驱动,我这里用的是Mysql。

03_Solr之dataimport

除了数据库驱动,还需要solr自带的两个jar文件,这两个jar文件主要是用来把数据库数据导入solr服务器的,都在该目录下: 

03_Solr之dataimport

一共三个jar包,都复制粘贴到 solr-7.3.1\server\solr-webapp\webapp\WEB-INF\lib 

03_Solr之dataimport

进入solr-7.3.1\server\solr\test_Core\conf 找到solrconfig.xml 文件,打开,

03_Solr之dataimport

添加如下配置:

<!--数据库配置 -->
 <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> 
    <lst name="defaults">  
          <str name="config">data-config.xml</str>  
    </lst>  
</requestHandler> 

03_Solr之dataimport

保存后,在同级目录下,创建data-config.xml文件,该文件主要是配置数据库和配置SQL语句的:

03_Solr之dataimport

打开添加如下配置:

03_Solr之dataimport

配置managed-schema中的数据库列和名称的映射关系。 

将下列代码复制到managed-schema中:

商品document的field包括:pid、pname、sort_id、sort_name、sale_price、pinfo、pic

 先定义Fieldtype:

solr本身提供的fieldtype类型够用了不用定义新的了。

pid:商品id主键

使用solr本身提供的:

<field name="id"type="string" indexed="true" stored="true"required="true" multiValued="false" /> 

pname:商品名称

<field name="product_name"type="text_ik" indexed="true" stored="true"/>

sort_id:商品分类

<field name="product_sort_id"type="string" indexed="true" stored="true"/>

sort_name:商品分类名称

<fieldname="product_sort_name" type="text_ik"indexed="true" stored="true"/>

sale_price:商品价格

<fieldname="product_sale_price" type="pfloat" indexed="true"stored="true"/>

desc:商品描述

<fieldname="product_desc" type="text_ik"indexed="true" stored="false"/>

pic:商品图片

<field name="product_pic"type="string" indexed="false" stored="true"/>


03_Solr之dataimport

至此,相关配置已经处理完成啦!下面开始导入数据: 

去solr-7.3.1/bin下启动solr:

在浏览器输入 localhost:8983/solr 进入后,找到自己的core 然后根据下图进行数据导入:

03_Solr之dataimport 

 03_Solr之dataimport

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111281.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • div:给div加滚动栏 div的滚动栏设置

    div:给div加滚动栏 div的滚动栏设置

    2021年12月4日
    50
  • android之LayoutInflater详解_什么是LayoutInflater

    作用:LayoutInflater作用是将layout的xml布局文件实例化为View类对象 对于常见的一个已经载入的Activity, 我们可以使用findViewById方法来获得其中的界面元素. 而对于一个没有被载入或者想要动态载入的界面, 就需要使用inflate来载入了. 方法:    Android里面想要创建一个画面的时候, 初学一般都是新建一个类, 继承Acti

    2022年3月9日
    54
  • 2020年公认最快的dns_2021最快最稳定的dns排行

    2020年公认最快的dns_2021最快最稳定的dns排行简介:2020国内速度最快的dns推荐原版周公解梦分析梦见儿子死了的吉凶境遇安全,推荐长辈惠泽,推荐承受父祖之余德,前辈之提拔,而得大成功及发展,原命若喜水木者更佳。若凶数者:成又转败,陷于离乱变动,至晚年终归孤独失败,又早年有落水灾遇,生涯九死一生之命格。国内又须戒色变及刀杀之危。梦到蛇和蛇一头,速度暗示你可能会受到别人的欺骗,或受到别人欺骗。最快梦见蛇的心理学解梦从做梦内容的本义来说:推荐动物…

    2025年9月3日
    11
  • [转摘]利用SgmlReader返回XPath分析HTML

    [转摘]利用SgmlReader返回XPath分析HTML

    2021年8月9日
    53
  • 整型与字符串转换

    整型与字符串转换我们写程序的时候经常会遇到整型和字符串相互转换的问题,这里要用到几个函数,itoa(),atoi(),sprintf()下面来介绍下这几个函数的具体用法!itoa功能:把一整数转换为字符串用

    2022年7月2日
    29
  • mysql备份后缀是什么_mysql备份还原

    mysql备份后缀是什么_mysql备份还原一、备份常用操作基本命令1、备份命令mysqldump格式格式:mysqldump-h主机名-P端口-u用户名-p密码–database数据库名>文件名.sql2、备份MySQL数据库为带删除表的格式备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。mysqldump–add-drop-table-uusername-p…

    2022年6月16日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号