要建立自己的全文检索,一般都需要从数据库导入数据,在原来配置的基础上,增加导入的功能,这里以mysql为例子:
1、E:\softwares\green\tomcat6\solr\solr\collection1\conf\solrconfig.xml中增加
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
2、增加E:\softwares\green\tomcat6\solr\solr\collection1\conf\data-config.xml,内容为数据库的连接信息
<?xml version="1.0" encoding="utf-8"?>
<dataConfig>
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/demo"
user="root"
password="root"/>
<document name="cms">
<entity name="view_blog" pk="pk_id" query="select a.id as id,a.title as title,a.content as content from y_blog a">
<field column="id" name="id" />
<field column="title" name="title" />
<field column="content" name="content" />
</entity>
</document>
</dataConfig>
3、E:\softwares\green\tomcat6\solr\solr\collection1\conf\schema.xml文件中增加相应field配置,title 和 content 在schema.xml里面都有了,那就不用动了暂时。
<copyField source="title" dest="text"/>
<copyField source="content" dest="text"/>
4、将mysql的驱动文件mysql-connector-java-5.1.20-bin.jar添加到solr的war包中(E:\softwares\green\tomcat6\webapps\solr\WEB-INF\lib),solr-dataimporthandler-4.3.1.jar 加入到 E:\softwares\green\tomcat6\webapps\solr\WEB-INF\lib 中。
5、重启服务,在浏览器中输入http://localhost:8080/solr/#/collection1/dataimport//dataimport ,进入下面界面,进行导入:
6.导入后,进入查询页面,用title 查询,看是否能查询到数据库中的数据,我的数据库中有两条,所以此处也查到了两条