(20)ElasticSearch java项目中的根据指定条件删除文档和查询所有文档
Posted 明月之诗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(20)ElasticSearch java项目中的根据指定条件删除文档和查询所有文档相关的知识,希望对你有一定的参考价值。
1、删除index1中,title包含工厂的文档
@Test public void testQueryDelete() throws IOException, InterruptedException, ExecutionException { //指定集群 Settings settings = Settings.builder().put("cluster.name","my-application").build(); //创建客户端 TransportClient client = new PreBuiltTransportClient(settings) .addTransportAddress(new TransportAddress(InetAddress.getByName("192.168.43.151"),9300)); //删除index1中,title包含工厂的文档 BulkByScrollResponse response = DeleteByQueryAction.INSTANCE .newRequestBuilder(client) .filter(QueryBuilders.matchQuery("title","工厂")) .source("index1") .get(); //返回删除的个数 long count = response.getDeleted(); System.out.println(count); client.close(); }
2、查询index1下所有文档,只显示3条
@Test public void testMatchAll() throws IOException, InterruptedException, ExecutionException { //指定集群 Settings settings = Settings.builder().put("cluster.name","my-application").build(); //创建客户端 TransportClient client = new PreBuiltTransportClient(settings) .addTransportAddress(new TransportAddress(InetAddress.getByName("192.168.43.151"),9300)); //创建查询对象 QueryBuilder qb = QueryBuilders.matchAllQuery(); //执行查询 SearchResponse sr = client.prepareSearch("index1") .setQuery(qb) .setSize(3)//查询出3个 .get(); //获取结果 SearchHits hits = sr.getHits(); for(SearchHit hit:hits) { //输出json System.out.println(hit.getSourceAsString()); //输出json的key与value Map<String, Object> map = hit.getSourceAsMap(); for(String key:map.keySet()) { System.out.println(key+"="+map.get(key)); } } client.close(); }
以上是关于(20)ElasticSearch java项目中的根据指定条件删除文档和查询所有文档的主要内容,如果未能解决你的问题,请参考以下文章
商城项目19_elasticsearch-Rest-Client整合SpringBoot中使用保存数据利用JAVA代码操作es
商城项目19_elasticsearch-Rest-Client整合SpringBoot中使用保存数据利用JAVA代码操作es
Elasticsearch大文件检索性能提升20倍实践(干货)
Elasticsearch大文件检索性能提升20倍实践(干货)
大数据技术之_20_Elasticsearch学习_01_概述 + 快速入门 + Java API 操作 + 创建删除索引 + 新建搜索更新删除文档 + 条件查询 + 映射操作