2015-01-07 solr 与mysql 结合

昨天我把solr搭建起来了,今天们试一下把数库与solr结合起来 我用的是 mysql 数据库

说简单的就是在solr中配置一些数据库连接就行了

1:在apache-tomcat-7.0.47\bin\solr\collection1 中找到solrconfig.xml 文件(这个是solr的配置信息文件 组件与其他附件都在这里配置的)

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">    
 <lst name="defaults">    
  <str name="config">data-config.xml</str>    
 </lst>    
</requestHandler>  
//把上面的代码插入到相对应的位置



2:在相同目录下 增加数据库配xml文件:data-config.xml
<?xml version="1.0" encoding="utf-8"?>    
<dataConfig>  
 <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"    
   url="jdbc:mysql://192.168.1.100:3306/easytoo_product"    
   user="easytoo_product"    
   password="easytoo_product"/>  
   <document name="cms">  
      <entity name="view_blog" pk="pk_id" query="select a.id as id,a.name as name,a.code as code from t_product a">    
          <field column="id" name="id" />    
          <field column="name" name="name" />    
          <field column="code" name="code" />  
      </entity>  
 </document>   
</dataConfig>

大家这个时候注意了:在<entity>标签中的
<pre name="code" class="html">query="select a.id as id,a.name as name,a.code as code from t_product a"

 这个就是你要查询并创建索引的表格必须把字段列出来 

<field column="id" name="id" /> 
这里对field 进行一些解析 中的 id 必须要在 schema.xml 文件中 <fields> 进行配置

如我在data-config.xml创建的name索引 就必须在schema.xml 文件中 <fields> 进行配置

   <field name="name" type="text_general" indexed="true" stored="true"/>
这里的 type="text_general" 就是指你的分词类型 我用的是 text_general

如果你在data-config.xml 配置了一个 code 索引 但是你在schema.xml 文件中 <fields> 并没有配置那么索引是不会被创建起来的。


3:自然是导包了

将mysql的驱动文件mysql-connector-java-5.1.20-bin.jar添加到solr的war包中(tomcat7\webapps\solr\WEB-INF\lib),solr-dataimporthandler-4.3.1.jar 加入到tomcat7\webapps\solr\WEB-INF\lib 中。

4:启动tomcat 

出现这样的画面:



证明你已经成功了。

接下来我们开始连接数据库创建索引:


这个时候你需要按refresh status按钮 来刷新状态查看是否已经完成导入了


上图我们已经成导入228条数据,我的数据库表中也是228条。那么现在我们来测试一下索引查询


1 :查询这个不多说

2 q 是查询条件图中我写的 是 *:* 意思就是全部查询

这是我们看看data-confing.xml中我们配置的索引id、name 、 code 三个写法如下

id:xxxxxxxxxxx

name:杨帆(因为这里我配置的name 索引的分词类型是 text_general 所以这里不能使用 * 号查询)但是这些索引都是支持模糊查询的

3:sort 查询结果分页结果数这个不多说了

4:查询后返回的结果类型 :有json xml 等等

5:查询结果集


接下来我们将会在Eclipse中调用 solr 的相关接口!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值