標籤:eclipse solr用戶端
1、建立solr用戶端:
先匯入包,把apache-solr-4.0.0\dist下的apache-solr
-dataimporthandler-4.0.0.jar 和 apache-solr-dataimporthandler-extras-4.0.0.jar複製到
WebRoot\WEB-INF\lib下
或是pom.xml檔案添加
<!-- -搜尋依賴 --><dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>4.7.2</version></dependency>
2、建立一個SolrJSearcheDemo類
import java.net.MalformedURLException;import org.apache.solr.client.solrj.SolrQuery;import org.apache.solr.client.solrj.SolrServer;import org.apache.solr.client.solrj.SolrServerException;import org.apache.solr.client.solrj.impl.HttpSolrServer;import org.apache.solr.client.solrj.response.QueryResponse;import org.apache.solr.common.SolrDocument;import org.apache.solr.common.SolrDocumentList;public class SolrJSearcheDemo { /** * Solr訪問地址 */ private static final String SOLR_URL ="http://localhost:8080/solr/"; // 通過網路地址擷取SolrServer對象 public SolrServer getSolrServer() throws MalformedURLException { return new HttpSolrServer(SOLR_URL); } // 查詢方法 public void search(String key) throws MalformedURLException{ SolrServer solrServer = getSolrServer(); // 查詢對象 SolrQuery query = new SolrQuery(key); query.setQuery(key); try { query.setHighlight(true) //設定開頭 .setHighlightSimplePre("<span class=’highlight’>") .setHighlightSimplePost("</span>") //設定結尾 .setStart(0) .setRows(10);//設定行數 //設定高亮的哪些地區 query.setParam("hl.fl", "content"); QueryResponse response=solrServer.query(query); SolrDocumentList list=response.getResults(); System.out.println("高亮顯示:"); for(SolrDocument sd:list){ String id=(String) sd.getFieldValue("id"); if(response.getHighlighting().get(id)!=null){ System.out.println(response.getHighlighting().get(id).get("content")); } } System.out.println("——————————————"); SolrDocumentList docs = response.getResults(); System.out.println("文檔個數:" + docs.getNumFound()); System.out.println("查詢時間:" + response.getQTime()); System.out.println("——————————————–"); for (SolrDocument doc : docs) { // 擷取查詢返回結果 String id = doc.getFieldValue("id").toString(); String title = doc.getFirstValue("title").toString(); String content = doc.getFirstValue("content").toString(); // 列印查詢結果 System.out.println("編號:"+id); System.out.println("標題:"+title); System.out.println("內容: "+content); System.out.println("—————————————-"); } } catch (SolrServerException e) { e.printStackTrace(); } } public static void main(String[] args) throws MalformedURLException { // 建立一個SolrJSearcheDemo對象 SolrJSearcheDemo sj = new SolrJSearcheDemo(); // 查詢條件 String Query ="生活"; // 調用查詢方法 sj.search(Query); }}
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/58/E3/wKiom1S_dyyji-fEAAJ8gbJYhiA600.jpg" title="QQ20150121175331.png" alt="wKiom1S_dyyji-fEAAJ8gbJYhiA600.jpg" />
本文出自 “江山如畫待贏歸” 部落格,謝絕轉載!
第四步 eclipse實現solr用戶端