solr官网下载地址
上传解压安装包
使用命令tar zxvf solr-5.5.5.tgz 解压
进入解压后的bin目录
执行 ./solr start 启动
这时候在浏览器输入 ip:8983/solr 可以访问
创建配置核心
在solr启动的情况下 执行 ./solr create -c mycore 创建核心 创建到了安装目录的server/solr里面
关闭solr ./solr stop
复制数据库连接jar包到 安装目录的server/solr-webapp/webapp/WEB-INF/lib文件夹下面
复制dist目录下solr-dataimporthandler-*.jar到刚才的目录
在创建的核心文件夹下(server/solr/mycore)的conf目录创建data-config.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<dataConfig>
<!--数据源-->
<dataSource name="test" type="JdbcDataSource" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/test" user="root" password="root"/>
<document name="user">
<!--用户表-->
<entity dataSource="test" name="user" pk="id" query="select * from user">
<field column="id" name="id"/> 和数据库的表相应
<field column="name" name="name"/>
</entity>
</document>
</dataConfig>
在server/solr/mycore/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>
在server/solr/mycore/conf/managed-schema文件 (120行左右) 添加如下内容 红色部分是添加的
启动solr 在浏览器访问
载入数据源之后 可以查询一下了
这就配置完成了
使用solrj在java程序中访问
引入solrj包
//告诉spring容器运行在虚拟机中
@RunWith(SpringJUnit4ClassRunner.class)
// 配置文件的位置
@ContextConfiguration("classpath:applicationContext.xml")
public class SolrTest {
@Test
public void testSolr() throws SolrServerException, IOException {
SolrClient solr = new LBHttpSolrClient("http://192.168.0.202:8983/solr/mycore"); //url要写出核心的名字
ModifiableSolrParams params = new ModifiableSolrParams(); //这些查询条件可以百度一下
params.set("q", "name:name1");
params.set("start", "0");
params.set("rows", "10");
params.set("wt", "json");
params.set("indent", "true");
QueryResponse response = solr.query(params);
SolrDocumentList results = response.getResults();
for (int i = 0; i < results.size(); ++i) {
System.out.println(results.get(i));
}
}
}
参考
https://www.solr.cc/blog/?p=260
https://www.solr.cc/blog/?p=1296
http://blog.csdn.net/gaohuanjie/article/details/40295327