zoukankan      html  css  js  c++  java
  • (七) solr数据导入:通过JDBC从数据库导入数据

    这节展示如何通过JDBC从mysql数据库中将数据导入进solr中

    假设数据库(blog)中有如下两个表:article,category

    article:

    id,title,catid

    category:

    id,catname

    接着需要做一下几个配置:

    在 schema.xml的域信息定义如下:

     <field name="id"     type="string"   indexed="true"  stored="true"  required="true"/>
     <field name="title" type="text" indexed="true" stored="true"/>
     <field name="catname" type="string" stored="true"/>

    solrconfig.xml

    <requestHandler name="/import" class="org.apache.solr.handler.dataimport.DataImportHandler">
     <lst name="defaults">
        <str name="config">db-data-config.xml</str>
     </lst>
     </requestHandler>

    db-data-config.xml 的配置如下:

    <dataConfig>
        <dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/blog" user="root" password="admin"/>
        <document>
            <entity name="article" query="select id,title,catid from article">
                <field column="id" name="id" />
                <field column="title" name="title" />
                <field column="title" name="suggest"/>
                <entity name="category" query="select catname from category where id=${article.catid}">
                    <field column="catname" name="catname"/>
                </entity>
            </entity>
        </document>
    </dataConfig>

    配置完成之后,重启solr服务,然后执行以下命令进行数据导入

    http://localhost:8983/solr/import?command=full-import

    /import: 这个命令用于显示当前的状态

    /import?command=full-import :使用该参数,表示进行完全导入,默认情况下,在开始导入的时候,会将上次导入的数据进先进行删除,然后再导入,通过另外一个参数,可以改变这种默认行为,clean=false

    /dataimport?command=delta-import:使用该参数,表示进行增量导入

    /dataimport?command=reload-config: 该命令表示强制对配置进行重新加载

    /dataimport?command=abort :该命令表示停止当前正在进行的索引

    下面就一些参数稍作解释:

     <field column="title" name="title" />  此处是将从mysql数据库中获取的字段名“title” 映射到schema.xml中的title域中(其实此处),其余字段以此类推

  • 相关阅读:
    Hibernate笔记——(ONE TO ONE)一对一
    Hibernate笔记——第一个简单实例
    Hibernate笔记——Hibernate介绍和初次环境配置
    JavaWeb笔记——ajax异步请求
    Spring笔记——Spring+JDBC组合开发
    Spring笔记——使用Spring进行面向切面(AOP)编程
    Spring笔记——依赖注入
    Java笔记——面向切面编程(AOP模式)
    Spring笔记——Spring框架简介和初次框架配置
    Java产生随机数
  • 原文地址:https://www.cnblogs.com/xiazh/p/2546860.html
Copyright © 2011-2022 走看看