本篇內(nèi)容主要講解“elasticsearch7.2的增刪改查語法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“elasticsearch7.2的增刪改查語法”吧!
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比容城網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式容城網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋容城地區(qū)。費用合理售后完善,10年實體公司更值得信賴。
<!-- 引入Elasticsearch相關(guān)jar包--> <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <version>7.2.0</version> </dependency> <!-- <dependency>--> <!-- <groupId>org.elasticsearch.client</groupId>--> <!-- <artifactId>transport</artifactId>--> <!-- <version>7.2.0</version>--> <!-- </dependency>--> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.2.0</version> </dependency> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-client</artifactId> <version>7.2.0</version> </dependency> <!-- <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <version>8.0.0</version> </dependency> -->
代碼如下:
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import org.apache.http.HttpHost; //import org.elasticsearch.action.get.GetRequest; //import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.admin.indices.delete.DeleteIndexRequest; import org.elasticsearch.action.delete.DeleteRequest; import org.elasticsearch.action.index.IndexRequest; import org.elasticsearch.action.index.IndexResponse; import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.update.UpdateRequest; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.index.query.BoolQueryBuilder; //import org.elasticsearch.index.query.QueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.builder.SearchSourceBuilder; import java.io.IOException; import java.util.*;
public class Demo1 { private static RestHighLevelClient client; private static final String ip="170.60.140.120"; private static final int port=9200;
public static void main(String[] args) throws Exception{ client=new RestHighLevelClient(RestClient.builder( new HttpHost(ip, port, "http"))); // indexincrement(); indexsearch(); // indexdelete(); // indexupdate(); client.close(); }
創(chuàng)建索引
private static void indexincrement() throws Exception{ HashMap<String, Object> jsonmap = new HashMap<>(); jsonmap.put("name","王五"); jsonmap.put("age",32); IndexRequest indexRequest = new IndexRequest("post").source(jsonmap); IndexResponse indexResponse = client.index(indexRequest, RequestOptions.DEFAULT); System.out.println("indexresponse = "+indexResponse); System.out.println("indexResponse.status() = "+indexResponse.status()); }
刪除索引
private static void indexdelete() throws Exception{ //第一種,按索引id刪除某個文檔。 /* DeleteRequest deleteRequest = new DeleteRequest("post", "m56EDXIBK5FuWnazQHHa"); client.delete(deleteRequest,RequestOptions.DEFAULT);*/ //第二種,一次性刪除整個索引 /* DeleteIndexRequest deleteIndexRequest = new DeleteIndexRequest("post"); client.indices().delete(deleteIndexRequest,RequestOptions.DEFAULT); */ //第三種,先按條件查詢出某范圍內(nèi)所有Id,再一個一個刪除 BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); sourceBuilder.query(boolQueryBuilder); sourceBuilder.size(100); SearchRequest searchRequest = new SearchRequest().indices("post"); searchRequest.source(sourceBuilder); SearchResponse response1 = client.search(searchRequest, RequestOptions.DEFAULT); SearchHit[] hits = response1.getHits().getHits(); for(SearchHit hit:hits){ String id = hit.getId(); DeleteRequest deleteRequest = new DeleteRequest("post", id); client.delete(deleteRequest,RequestOptions.DEFAULT); }
更新文檔,(以map方式為例)
private static void indexupdate() throws Exception{ UpdateRequest updateRequest = new UpdateRequest("post","kCfJHHIBCUDx2GUCB0Dk"); HashMap<String, Object> jsonmap = new HashMap<>(); jsonmap.put("name","趙六"); jsonmap.put("age",16); updateRequest.doc(jsonmap); client.update(updateRequest,RequestOptions.DEFAULT); }
查詢索引
private static void indexsearch(Connection conn) throws Exception{ /* 第一種,按某個id號查詢方式 GetRequest getRequest = new GetRequest("risklog", "rpBmNnIB76i_tBrAwvlC"); GetResponse getResponse = client.get(getRequest, RequestOptions.DEFAULT);*/ /* 第二種,按條件查詢整個索引表方式 */ BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); sourceBuilder.query(boolQueryBuilder); //這里設(shè)置查詢7萬條數(shù)據(jù) sourceBuilder.size(70000); // SearchRequest searchRequest=new SearchRequest(); SearchRequest searchRequest = new SearchRequest().indices("middleware_apache_server_access"); searchRequest.source(sourceBuilder); SearchResponse response1 = client.search(searchRequest, RequestOptions.DEFAULT); List<JSONObject> list = new ArrayList<>(); response1.getHits().forEach(item -> list.add(JSON.parseObject(item.getSourceAsString()))); System.out.println("list.size() = "+list.size()); // Iterator<JSONObject> iterator = list.iterator(); for(int i=0;i<list.size();i++){ JSONObject jsonObject = list.get(i); System.out.println("jsonObject = "+jsonObject); } }
}
到此,相信大家對“elasticsearch7.2的增刪改查語法”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
新聞名稱:elasticsearch7.2的增刪改查語法
本文鏈接:http://aaarwkj.com/article36/gghcpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)頁設(shè)計公司、定制網(wǎng)站、電子商務(wù)、網(wǎng)站維護、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)