solr连接数据库导入数据
本文简单讲诉 solr建立全文索引,从数据库导入数据,生成索引文件,本文建立在已经搭建好solr应用的情况下,如要了解如何部署solr服务可先看上一文:solr 安装
环境:jdk 7,solr4.10.1 ,tomcat 7
附:参考文档地址:http://wiki.apache.org/solr/DataImportHandler
1,首先在solrconfig.xml中引入dataimport 路径 : E:\solr\example\solr\collection1\conf
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defaults"> <str name="config">data-config.xml</str> </lst> </requestHandler>
如不知加在什么地方,可直接搜索requestHandler 有个name="/select"的加在上面即可
2,建立data-config.xml,即为刚才引入的数据库配置信息,根据配置与solrconfig.xml放在同一目录下
<?xml version="1.0" encoding="utf-8"?> <dataConfig> <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" user="root" password="root"/> <document name="product"> <entity name="product" pk="id" query="select * from _product"> <field column="id" name="id" /> <field column="name" name="name" /> <field column="keywords" name="keywords" /> <field column="intro" name="intro" /> <field column="description" name="description" /> <field column="sn" name="sn" /> </entity> </document> </dataConfig>
配置数据库信息,配置要查询出的document
3,根据刚才document的配置在schema.xml中加入field的配置,关于field的配置解释这里先不做介绍
<!-- for csop product <field name="id" type="string" indexed="true" stored="true" /> <field name="name" type="string" indexed="true" stored="true" /> <field name="keywords" type="string" indexed="true" stored="true" /> <field name="description" type="string" indexed="true" stored="true" /> --> <field name="intro" type="string" indexed="true" stored="true" /> <field name="sn" type="string" indexed="true" stored="true" /> <!-- for csop product over -->
由于其中一些字段solr默认配置已经给出,就不需要再添加
4,加入jar包
a,将mysql的驱动jar包加入solr中,就是部署的tomcat的solr应用:\webapps\solr\WEB-INF\lib
b,将dataimport的jar包加入solr中,dataimport 包位置 E:\solr\dist\solr-dataimporthandler-4.10.1.jar
5,重启tomcat
6,访问http://localhost:8983/solr/#/collection1/dataimport//dataimport(手动点击也一样),导出索引文件
7,查询验证
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。