首页 > 代码库 > solr的安装配置与helloworld

solr的安装配置与helloworld

一、安装solr

1.安装jdk环境和tomcat

2.解压solr压缩包,这里我解压到opt目录下

3.把/usr/local/solr-4.8.0/dist/solr-4.8.0.war部署到tomcat的webapps文件夹下

4.启动Tomcat,解压缩war包,解压完毕就可以删除原有war包了。

5.需要把/opt/solr-4.8.0/example/lib/ext下的所有Jar包添加到solr工程中(solr项目的lib目录下)

6.创建solrhome,把/opt/solr/solr-4.8.0/example/solr文件夹复制一份作为solrhome。

7.告诉solr服务solrhome的位置,需要修改web.xml

技术分享

 

8.启动tomcat,输入http://ip:端口号/项目名访问

 

技术分享

二、配置中文分析器、自定义业务域

分析器使用IKAnalyzer。

使用方法:

第一步:把IKAnalyzer依赖的jar包添加到solr工程中,把分析器的扩张词典添加到classpath中(如果WEB-INF目录下没有classes文件夹可以自己建一个)。

第二部:需要自定义一个FieldType,在Schema.xml中定义。可以在FieldType中指定中文分析器

<fieldType name="text_ik" class="solr.TextField">
  <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>

第三步:自定义域。指定域的类型为自定义的FieldType。

 

1 <field name="item_title" type="text_ik" indexed="true" stored="true"/>
2 <field name="item_sell_point" type="text_ik" indexed="true" stored="true"/>
3 <field name="item_price"  type="long" indexed="true" stored="true"/>
4 <field name="item_image" type="string" indexed="false" stored="true" />
5 <field name="item_category_name" type="string" indexed="true" stored="true" />
1 <field name="item_desc" type="text_ik" indexed="true" stored="false" />
2 
3 <field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
4 <copyField source="item_title" dest="item_keywords"/>
5 <copyField source="item_sell_point" dest="item_keywords"/>
6 <copyField source="item_category_name" dest="item_keywords"/>
7 <copyField source="item_desc" dest="item_keywords"/>

第四步:重启tomcat。

三、helloword的编写

 1 package cn.sp.test;
 2 
 3 import org.apache.solr.client.solrj.SolrQuery;
 4 import org.apache.solr.client.solrj.SolrServer;
 5 import org.apache.solr.client.solrj.impl.HttpSolrServer;
 6 import org.apache.solr.client.solrj.response.QueryResponse;
 7 import org.apache.solr.common.SolrDocument;
 8 import org.apache.solr.common.SolrDocumentList;
 9 import org.apache.solr.common.SolrInputDocument;
10 
11 public class SolrJTest {
12     
13     public void test01()throws Exception{
14         //建立连接
15         SolrServer solrServer = new HttpSolrServer("http://192.168.75.129:8081/solr");
16         //创建一个文档对象
17         SolrInputDocument doc = new SolrInputDocument();
18         //添加域
19         doc.addField("id", "110");
20         doc.addField("item_title", "我的第一个solr-Demo");
21         doc.addField("item_sell_point", "卖点全无");
22         solrServer.add(doc);
23         //提交
24         solrServer.commit();
25     }
26     @org.junit.Test
27     public void test02()throws Exception{
28         //建立连接
29         SolrServer solrServer = new HttpSolrServer("http://192.168.75.129:8081/solr");
30         //创建一个查询对象
31         SolrQuery query = new SolrQuery();
32         query.setQuery("*:*");
33         //执行查询
34         QueryResponse response = solrServer.query(query);
35         //取查询结果
36         SolrDocumentList solrDocumentList = response.getResults();
37         for (SolrDocument solrDocument : solrDocumentList) {
38             System.out.println(solrDocument.get("id"));
39             System.out.println(solrDocument.get("item_title"));
40             System.out.println(solrDocument.get("item_sell_point"));
41         }
42     }
43 }

执行test01后,查询可以看到数据说明成功。

技术分享

 最后附上所需相关jar包,其中不包括红色部分gson的。

技术分享

solr的安装配置与helloworld