首页 > 其他分享 >springboot整合elasticsearch-RestHighLevelClient api查询

springboot整合elasticsearch-RestHighLevelClient api查询

时间:2023-09-18 16:55:27浏览次数:45  
标签:springboot elastic api rest client elasticsearch org boolQuery

1. 依赖

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
<dependency>
  <groupId>org.elasticsearch.client</groupId>
  <artifactId>elasticsearch-rest-high-level-client</artifactId>
  <version>${elastic.version}</version>
</dependency>
<dependency>
  <groupId>org.elasticsearch.client</groupId>
  <artifactId>elasticsearch-rest-client</artifactId>
  <version>${elastic.version}</version>
</dependency>
<dependency>
  <groupId>org.elasticsearch</groupId>
  <artifactId>elasticsearch</artifactId>
  <version>${elastic.version}</version>
</dependency>

2. 连接

spring:
  elasticsearch:
    address: ip:port 
    username: ''
    password: ''
public RestHighLevelClient elasticsearchClient() {
        final ClientConfiguration clientConfiguration = ClientConfiguration.builder()
                .connectedTo(elasticsearchUrl)
                .withBasicAuth(elasticsearchUsername, elasticsearchPassword)
          .withSocketTimeout(10000) .build(); return RestClients.create(clientConfiguration).rest(); }

 3. 查询

SearchRequest searchRequest = new SearchRequest(queryindex);
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
boolQuery.filter(QueryBuilders.matchPhraseQuery("field1", "value1"));
boolQuery.filter(QueryBuilders.matchPhraseQuery("field2", "value2"));
searchRequest.source().query(boolQuery);
SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
searchResponse.getHits().getHits().getSourceAsString();

 

标签:springboot,elastic,api,rest,client,elasticsearch,org,boolQuery
From: https://www.cnblogs.com/JNU-Iot-Longxin/p/17712385.html

相关文章

  • 【接口自动化测试】Eolink Apikit 接口文档生成与导出
    在API研发管理产品中,几乎所有的协作工作都是围绕着API文档进行的。采用文档驱动的协作模式会比先开发、后维护文档的方式更好,团队协作效率和产品质量都能得到提高。基于文档来进行工作,使用文档驱动方式可以降低大量无意义的沟通成本。创建了API文档之后,可以随时查看API......
  • API数据接口在电子商务中的应用
    一、引言随着互联网和移动设备的普及,电子商务(电商)已经成为人们日常生活中不可或缺的一部分。无论是购买日常生活用品,还是享受便捷的服务,电商都扮演着重要的角色。而在这个快速发展的领域中,API(应用程序接口)数据接口扮演着一个关键的角色。它们帮助各个系统之间进行沟通,从而实现各种......
  • 快学会这个技能-.NET API拦截技法
    大家好,我是沙漠尽头的狼。本文先抛出以下问题,请在文中寻找答案,可在评论区回答:什么是API拦截?一个方法被很多地方调用,怎么在不修改这个方法源码情况下,记录这个方法调用的前后时间?同2,不修改源码的情况下,怎么对方法的参数进行校正(篡改)?同3,不修改源码的情况下,怎么对方法的返回值进行伪造?......
  • springboot vue电子班牌系统源码,以云平台、云服务器为基础,融合课程管理、物联控制、
    随着时代进步,数字信息化不断发展,很多学校都开始了数字化的转变。智慧校园电子班牌系统是电子班牌集合信息化技术、物联网、智能化,电子班牌以云平台、云服务器为基础,融合了班级文化展示、课程管理、物联控制、教务管理、考勤管理、素质评价、资源管理、家校互联等一系列应用。实现了......
  • API-T00L v1.2 api利用工具
    API-T00Lv1.2https://github.com/pykiller/API-T00L期望是针对互联网各大API泄露的利用工具,包含钉钉、企业微信、飞书等。特别鸣谢chatgpt,代码好帮手。目前界面长这样,布局拉胯,能用就行。食用方法钉钉1、肯定你得有ak、as。填进去获取token2、建用户最简单的做法,直接填......
  • Cyber-时间API
     /*日志头文件#include"cyber/common/log.h"#include"cyber/init.h"在#include"cyber/cyber.h"中已经包含了上述两个头文件*///日志初始化apollo::cyber::Init(argv[0]);//日志APIADEBUG......
  • Cyber-时间相关API
     /*时间相关APITime是一个用来管理时间的类;可用于当前时间的获取、耗时计算、时间转换等Duration相关接口,用于表示时间间隔,可以按照指定的纳秒或者秒进行初始化Rate接口一般用于休眠操作(会自动将频率换算成休眠时间)Timer可用于创建定......
  • 在k8s中,如果要启用API聚合功能,需要配置哪些参数?
    为了能够将用户自定义的API注册到master的apiserver上,需要在kube-apiserver服务中,启用下面的参数: --proxy-client-cert-file=/etc/kubernetes/pki/front-proxy-client.crt--proxy-client-key-file=/etc/kubernetes/pki/front-proxy-client.key--requestheader-allowed-na......
  • Spring,SpringMVC,SpringBoot,SpringCloud有什么区别?
    简单介绍Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring使你能够编写更干净、更可管理、并且更易于测试的代码。SpringMVC是Spring的一个模块,一个web框架。通过DispatcherServlet,ModelAndView和ViewResolver,开发web应用变得很容易。主要针对的......
  • Playwright测试REST API
    Playwright不仅可以测试Web应用,也可以访问RESTAPI进行测试。考虑以下应用场景:测试服务器端API。在进行Web应用测试前,调用一些API探测服务器状态。在Web应用测试后,调用一些API服务来进行数据验证。后面的2个选项意味着可以在测试用例中组合Web和API的测试。举例测试流程如......