要建立自己的全文检索,一般都需要从数据库导入数据,在原来配置的基础上,增加导入的功能,这里以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 查询,看是否能查询到数据库中的数据,我的数据库中有两条,所以此处也查到了两条