分享

【Solr专题之九】SolrJ教程

 贾朋亮博客 2015-08-21

一、SolrJ基础

1、相关资料

API:http://lucene./solr/4_9_0/solr-solrj/

apache_solr_ref_guide_4.9.pdf:Client APIs---Using SolrJ

http://wiki./solr/Solrj

solr in action:Using the SolrJ client library to add documents from Java, Using SolrJ from Java

2、


二、SolrJ用于索引




三、SolrJ用于搜索

  1. package org.jediael.ui;  
  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.jediael.util.Constants;  
  10.   
  11. public class ReturnResult {  
  12.   
  13.     public static void main(String[] args) throws Exception {  
  14.   
  15.         String serverUrl = (args != null && args.length > 0) ? args[0]  
  16.                 : "http://" + Constants.IP + ":" + Constants.PORT  
  17.                         + "/solr/collection1";  
  18.         SolrServer solrServer = new HttpSolrServer(serverUrl);  
  19.   
  20.         // 读取输入参数作为查询关键字,若无关键字,则查询全部内容。  
  21.         String queryString = (args != null && args.length > 1) ? args[1]  
  22.                 : "*:*";  
  23.         SolrQuery solrQuery = new SolrQuery(queryString);  
  24.         // 定义使用哪个request  
  25.         // handler进行搜索,若无指定,则使用默认的handler.默认是/select。若solrConfig.xml中无/select这个searchHandler,则返回以下错误  
  26.         solrQuery.set("qt""/search");  
  27.         // solrQuery.setRows(5);  
  28.         QueryResponse resp = solrServer.query(solrQuery);  
  29.   
  30.         SolrDocumentList hits = resp.getResults();  
  31.   
  32.         for (SolrDocument doc : hits) {  
  33.             for (String fieldName : doc.getFieldNames()) {  
  34.                 System.out.println(fieldName + " : " + doc.getFieldValue(fieldName) + "  ");  
  35.             }  
  36.             System.out.println("------------------------Next Document--------------------------------");  
  37.         }  
  38.   
  39.     }  
  40. }  


1、使用SolrJ进行搜索,基本步骤如下:

(1)创建一个SolrServer。

(2)创建一个SolrQuery,并使用set(String,String)进行参数的配置。

(3)调用SolrServer.query(solrQuery),返回QueryResponse。

(4)对QueryResponse进行分析处理。

2、以下语句用于指定使用哪个request handler进行搜索,若无指定,则使用默认的handler.默认是/select。若solrConfig.xml中无/select这个searchHandler,则返回以下错误

  1. <span style="font-family: Arial, Helvetica, sans-serif;">solrQuery.set("qt""/search");</span>  

HTTP Status 404 - /solr/collection1/select


type Status report

message /solr/collection1/select

description The requested resource is not available.


Apache Tomcat/7.0.54



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多