本篇內(nèi)容主要講解“elasticsearch7.2的增刪改查語(yǔ)法”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“elasticsearch7.2的增刪改查語(yǔ)法”吧!

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比容城網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式容城網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋容城地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。
<!-- 引入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刪除某個(gè)文檔。
/* DeleteRequest deleteRequest = new DeleteRequest("post", "m56EDXIBK5FuWnazQHHa");
client.delete(deleteRequest,RequestOptions.DEFAULT);*/
//第二種,一次性刪除整個(gè)索引
/* DeleteIndexRequest deleteIndexRequest = new DeleteIndexRequest("post");
client.indices().delete(deleteIndexRequest,RequestOptions.DEFAULT); */
//第三種,先按條件查詢出某范圍內(nèi)所有Id,再一個(gè)一個(gè)刪除
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{
/* 第一種,按某個(gè)id號(hào)查詢方式
GetRequest getRequest = new GetRequest("risklog", "rpBmNnIB76i_tBrAwvlC");
GetResponse getResponse = client.get(getRequest, RequestOptions.DEFAULT);*/
/*
第二種,按條件查詢整個(gè)索引表方式
*/
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(boolQueryBuilder);
//這里設(shè)置查詢7萬(wàn)條數(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);
}
}}
到此,相信大家對(duì)“elasticsearch7.2的增刪改查語(yǔ)法”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
新聞名稱:elasticsearch7.2的增刪改查語(yǔ)法
本文鏈接:http://www.chinadenli.net/article36/gghcpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)頁(yè)設(shè)計(jì)公司、定制網(wǎng)站、電子商務(wù)、網(wǎng)站維護(hù)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)