国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

solr cloud系列-solrj的使用

2019-11-06 08:15:19
字體:
來源:轉載
供稿:網友

這篇文章來介紹一下solr的java   api(solrJ)的使用方式,,主要是鏈接的建立和增刪改查。1.maven依賴,我這里使用的solrj6.1.0版本<dependency><groupId>org.apache.solr</groupId><artifactId>solr-solrj</artifactId><version>${solr.version}</version></dependency>2.創建查詢的鏈接,下邊代碼是創建zk鏈接的代碼public class SolrCloudClient {PRivate static final Logger log = LogManager.getLogger();private final static String zkHost="192.168.1.50:2181,192.168.1.51:2181,192.168.1.52:2181";public static SolrClient getZkSolrClient() {log.info("連接solr cloud,zkhost={} ", zkHost);SolrClient solr = new CloudSolrClient.Builder().withZkHost(zkHost).build();return solr;} }3.幾種經常使用的查詢方式獲取鏈接private static SolrClient solrClient=SolrCloudClient.getZkSolrClient();SolrQuery query = new SolrQuery();

(1)  q條件查詢方式,查詢字段。

query.setQuery("id:100001");如果想在q查詢中多條件查詢,需要用AND 把查詢條件分割開,一定是大寫的 ANDquery.setQuery("id:100001 and name=某某");

(2)  fq查詢方式,輔助查詢,是指在q查詢結果中同時符合fq的查詢條件,可以設置多個。

query.addFilterQuery("provinceCode:"+provinceCode); query.addFilterQuery("cityCode:"+cityCode); fq的查詢方式還可以寫成1行,query.addFilterQuery("provinceCode:1000 AND cityCode:1002"); fq的兩種寫法都回返回相同的結果,但是solr查詢運算的過程不過,第一種是加載了2次filterQuery來進行運算,這樣需要多進行一次交集運算。第二種方式是一次計算fq的值,但是比較耗內存,這個要看大家的選擇,后續會講下solr優化。

(3) 分頁查詢,solr里是用start和rows來實現分頁的

query.setStart(0);query.setRows(10);

(4)  設置需要返回的字段和查詢的集合

query.setFilterQueries("id,name");

query.set("collection","student")

(5)  設置排序的字段,用id正序排序

import  org.apache.solr.client.solrj.SolrQuery.ORDER

query.setSort("id", ORDER.asc.reverse());

(6)  查詢并返回json數據,也可以返回bean類,看自己的選擇

QueryResponse response=solrClient.query(query);SolrDocumentList  list=response.getResults();JSONArray arrJson = new JSONArray();for(SolrDocument document:list){arrJson.add(document);}return arrJson.toJSONString();

這里簡單介紹了下solrj簡單查詢的方式,后面再介紹facet查詢方式。


上一篇:捕魚和分魚

下一篇:怎樣存利最大

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 彩票| 临武县| 巧家县| 丽江市| 江孜县| 安达市| 扶风县| 吉安县| 平乐县| 图木舒克市| 新民市| 梁河县| 巴楚县| 紫阳县| 和田市| 赫章县| 南木林县| 张北县| 岫岩| 中山市| 北安市| 柘荣县| 太原市| 洛宁县| 安多县| 巴林左旗| 英山县| 普格县| 龙陵县| 五峰| 上林县| 广东省| 新建县| 兰州市| 广昌县| 宣化县| 甘孜县| 筠连县| 夏河县| 定兴县| 定兴县|