solr提交oracle数据

来源:转载


 1、在schema.xml中添加以下定义

<field name="productCode" type="text_general" indexed="true" stored="true" />
<field name="goodsName" type="text_general" indexed="true" stored="true" />

2、在solrconfig.xml中添加以下定义

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

3、在solrconfig.xml目录下新建db-data-config.xml文件 配置如下

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource" driver="oracle.jdbc.driver.OracleDriver" 
url="jdbc:oracle:thin:@localhost:1521:test" 
user="test" password="test"/>
<document name="product">
<entity name="goods" query="select GOODS_ID,PRODUCT_CODE,GOODS_NAME from goods">
<field column="GOODS_ID" name="id"/>
<field column="PRODUCT_CODE" name="productCode"/>
<field column="GOODS_NAME" name="goodsName"/>
</entity>
</document>
</dataConfig>

4、下载oracle驱动放到apache-tomcat-6.0.29/webapps/solr/WEB-INF/lib下

5、将下载的solr解压后apache-solr-3.6.2/dist文件加下找到apache-solr-dataimporthandler-3.6.2.jar和apache-solr-dataimporthandler-extras-3.6.2.jar放到apache-tomcat-6.0.29/webapps/solr/WEB-INF/lib下。

6、重启tomcat,测试:http://localhost:8081/solr/dataimport?command=full-import

7.查询测试,看是否能够查询出导入的goods表数据。


过程中如果报错[doc=null] missing required field:id 是schema.xml中设置为必输或则其他约束。

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

根据配置做相应修改





分享给朋友:
您可能感兴趣的文章:
随机阅读: