`
dou_shini8820
  • 浏览: 77888 次
社区版块
存档分类
最新评论

Solr和ssh的整合

阅读更多

 solr介绍: 

 

Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。 

 

 

solr和ssh的整合:

 

一、solr和tomcat的整合

 

1、建立G:\lucene\solr\home目录,把G:\apache-solr-3.6.2\example\solr里面的所有文件拷贝到home下,并新建data文件夹,将webapps下的war解压到G:\lucene\solr\server下

 

 

2、配置home/conf/ solrconfig.xml中data的路径:<dataDir>${solr.data.dir:G:\lucene\solr\home\data}</dataDir> 

 

 

3、设置tomcat的上下文:

<Host name="localhost"  appBase="webapps"

            unpackWARs="true" autoDeploy="true">

            <Context path="/solr" docBase="G:\lucene\solr\server" reloadable="false">

                     <Environment name="solr/home" type="java.lang.String" value="G:\lucene\solr\home" override="true"/>          

           </Context>

  

4、启动tomcat,进入http://localhost:8080/solr/admin/

 

 

5、打开home/conf/ schema.xml,发现有很多默认的fieldType,在我tomcat的solr中,点击Analysis进入分词,Field选择type后输入他默认的一个fieldType,分词如下: 

 

  

6、使用我们自己的中文分词mmseg4j,将mmseg4j-1.8.5中的mmseg4j-all-1.8.5.jar、mmseg4j-solr-1.8.5.jar拷贝到G:\lucene\solr\server\WEB-INF\lib中,不是项目中。 

 

7、打开README.txt,复制mmseg4j其中的fileTyppe到schema.xml中,并复制mmseg4j中data下的文件到home下的dic目录中,都修改成dic

 

二、把solr添加到项目中

 

1、添加如下jar,在apache-solr-3.6.2\dist\solrj-lib下 

 

 

2、新建测试类Test 

@Test
	public void test2(){
		//1、创建solrServer对象CommonsHttpSolrServer 
		try {
			CommonsHttpSolrServer server=new CommonsHttpSolrServer(solrServerUrl);
			server.deleteByQuery("*:*");
			server.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

 

 

2.2、添加索引
@Test
	public void test1(){
		//1、创建solrServer对象CommonsHttpSolrServer 
		try {
			CommonsHttpSolrServer server=new CommonsHttpSolrServer(solrServerUrl);
			SolrInputDocument doc=new SolrInputDocument();
			doc.addField("id", "1");//id是唯一的主键,当相同的id添加后面的覆盖前面的
			doc.addField("title", "这是我第一个solrj程序,累");//最好在schema.xml将tile改为自己的field,如msg_title
			doc.addField("content", "我不爱学习爱睡觉");			
			server.add(doc);
			server.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

 

 

注意:出现BadRequest时,看看schema.xml中是否有合适的field

 

 

 

 

 

 

 

 

 

 

  • 大小: 12.7 KB
  • 大小: 9.1 KB
  • 大小: 11.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics