SpringBoot整合ES及简单API使用

SpringBoot集成ES以及常用API演示 查看官方文档 地址:https://www.elastic.co/guide/index.html 找到Elasticsearch Clients,点进去 里面有各种语言的客户端,推荐Java REST Client,Java原生APIJava API 高级客户端是对低级客户端的封装,在Getting started中能依次看到兼容性、API文档、Maven依赖等介绍。 官方文档上写的依赖 初始化 SpringBoot项目集成ES <!--Elasticsearch相关依赖--> &l 阅读详情

1、pom文件导入ES依赖

<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>elasticsearch-rest-high-level-client</artifactId>
    <version>7.4.2</version>
</dependency>

2、编写配置,给容器中注入一个RestHighLevelClient

@Configuration
public class GulimallElasticSearchConfig {

    public static final RequestOptions COMMON_OPTIONS;

    static {
        RequestOptions.Builder builder = RequestOptions.DEFAULT.toBuilder();
        COMMON_OPTIONS = builder.build();
    }

    @Bean
    public RestHighLevelClient esClient(){
        RestClientBuilder builder = RestClient.builder(new HttpHost("192.168.146.129", 9200, "http"));
        return new RestHighLevelClient(builder);
    }
}

3、测试程序

@Test
    public void indexData() throws IOException {
        IndexRequest indexRequest = new IndexRequest("users");
        // 数据ID
        indexRequest.id("1");
        User user = new User();
        user.setUserName("zhangsan");
        user.setGender("male");
        user.setAge(20);
        String jsonString = JSON.toJSONString(user);
        indexRequest.source(jsonString, XContentType.JSON); // 要保存的内容

        // 使用客户端执行操作
        IndexResponse index = client.index(indexRequest, GulimallElasticSearchConfig.COMMON_OPTIONS);
        System.out.println(index);
    }

4、查看ES,数据已存入到ES
在这里插入图片描述

5、带检索条件的查询

@Test
    public void searchData() throws IOException {
        // 1、创建检索请求
        SearchRequest searchRequest = new SearchRequest();
        // 2、指定索引
        searchRequest.indices("users");
        // 3、指定DSL,检索条件
        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
        // 够造检索条件
        sourceBuilder.query(QueryBuilders.matchQuery("userName", "zhangsan"));

        searchRequest.source(sourceBuilder);
        // 4、执行检索
        SearchResponse searchResponse = client.search(searchRequest, GulimallElasticSearchConfig.COMMON_OPTIONS);
        System.out.println("---------> " + searchResponse);
    }

打印结果:

{
    "took": 5,
    "timed_out": false,
    "_shards": {
        "total": 1,
        "successful": 1,
        "skipped": 0,
        "failed": 0
    },
    "hits": {
        "total": {
            "value": 1,
            "relation": "eq"
        },
        "max_score": 0.2876821,
        "hits": [
            {
                "_index": "users",
                "_type": "_doc",
                "_id": "1",
                "_score": 0.2876821,
                "_source": {
                    "age": 20,
                    "gender": "male",
                    "userName": "zhangsan"
                }
            }
        ]
    }
}
快速理解Elasticsearch整合SpringBoot的Scroll API优化应用 深入解析如何在SpringBoot项目中高效使用Elasticsearch的Scroll API,提升大数据量下分页查询性能,解决深度翻页瓶颈,实现elasticsearch整合sprongboot场景下的稳定数据遍历。 阅读详情

相关推荐

Elasticsearch整合SpringBoot:REST API设计完整指南

深入讲解如何将elasticsearch整合sprongboot,构建高效RESTful API接口,涵盖配置、服务编写与查询优化,助力开发高响应的搜索功能,提升系统整体性能表现。

weixin_35509395的博客 975

Elastic stack技术栈学习(十)— springboot集成ES API详解

在test里测试一下各个API。 打开es,也运行es-head,方便观察。 一、关于索引的API详解 这里的client对ES发出请求,就相当于我们的kibana。 1.1 声明客户端 @SpringBootTest class SpringEsApiApplicationTests { @Autowired @Qualifier("restHighLevelClient") private RestHighLevelClient client; //加上@@Qualifier,就可以

qq_44886213的博客 7129

SpringBoot整合Elasticsearch:聚合分析API完整示例

通过完整示例演示如何在SpringBoot中整合Elasticsearch,实现高效的聚合分析功能。涵盖配置、API调用与数据处理,帮助开发者快速掌握elasticsearch整合sprongboot的核心技巧,提升搜索与分析能力。

weixin_42466723的博客 476

SpringBoot集成ESAPI

如果我们对配置文件路径没有自定义配置,那么ESAPI会从默认路径中读取配置文件。,选项卡 无论您使用什么构建工具。如果您需要 Jakarta 版本,请确保 加。解压缩您刚刚下载的配置文件并找到 2 个属性文件,复制 2 个属性 文件从。文件(如果您希望确认 GPG 签名,则下载 .asc 文件)。从您正在使用的 ESAPI 发行版中下载这两个文件。至此:我们就可以把ESAPI的配置文件放到项目。第 2 步:获取 2 个属性文件。目录下,并打入jar、war包了。并包含您正在使用的任何。

weixin_45816407的博客 1869

Elasticsearch整合SpringBoot实现CRUD API核心要点

深入讲解如何将elasticsearch整合sprongboot,实现高效的CRUD API。涵盖配置、依赖、数据操作等关键步骤,帮助开发者快速掌握elasticsearch整合sprongboot的实际应用技巧。

weixin_31715353的博客 324

Elasticsearch整合SpringBoot下的跨域API配置新手教程

手把手教你如何在elasticsearch整合sprongboot项目中解决跨域API问题,涵盖常见配置误区与实际代码示例,帮助新手快速上手并实现前后端顺畅通信。

weixin_35433448的博客 1015

ElasticSearch7.6 整合Springboot测试API(五)

一、加入ES依赖 特别注意的是:如果是Springboot自带的ES依赖可能跟我们本地的ES版本不一致,记得改为本地版本! <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-d...

qq_41030039的博客 766

SpringBoot +esapi 实现防止xss攻击 实战代码

SpringBoot +esapi springSecurity 过滤器链集成 实现防止xss攻击 实战代码

Springboot整合ES8(Java API Client)

Springboot整合ES8(Java API Client)

Charge8的博客 1万+

SpringBoot +esapi 实现防止xss攻击 实战代码,满满干货

SpringBoot +esapi 实现防止xss攻击 实战代码,真实有效

基于PLC的全自动洗衣机控制系统+控制程序

本设计使用PLC控制系统替换了传统的继电器控制系统,实现了全自动洗衣机在硬件方面的提升,丰富了全自动洗衣机在软件方面的功能,提高了全自动洗衣机的洗衣效率,基本可以满足用户的洗衣需求。

zzzz114231的博客 8952

SpringBoot整合ES——ElasticSearch&&多种复杂查询api的使用

ElasticSearch 阅读本文前请注意,本文仅仅展示springboot整合es中大部分场景api的操作,对其概念并没有过多的阐述,想获得更完整的文档,请查阅官方文档https://www.elastic.co/cn/elasticsearch/ 在介绍使用之前,先对比一下es与mysql关键字术语描述的比较吧 1、配置环境 1、导入依赖 <dependency> <groupId>org.springframework.boot</groupId>

小爽帅到拖网速的博客 4579

保姆级教程:用Smaart7和你的USB声卡搞定现场音响系统调试(附频谱与延时测试避坑指南)

本文提供Smaart7与USB声卡协同工作的现场音响系统调试指南,涵盖硬件连接、频谱分析、延时校准等关键步骤。通过详细的操作流程和常见问题解决方案,帮助音响工程师快速掌握专业测量技术,确保演出音质达到最佳状态。

weixin_29290259的博客 422

SpringBoot整合ElasticSearch及API详解

ELK简介 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。 Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 Logstash 主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负

倔强100%的博客 1409

灰度发布、蓝绿部署、双活架构与数据同步/备份/迁移

本文系统介绍了现代互联网系统的核心部署策略与数据管理技术体系。主要内容包括:1)三种服务发布策略(灰度发布、蓝绿发布、滚动发布)的原理、实现方式和适用场景对比;2)高可用架构设计(同城双活、异地双活、异地多活)的技术方案;3)数据同步机制、备份策略与迁移方案的设计要点。文章通过架构图、流程图和配置示例详细展示了各类技术的实施方法,并分析了不同方案的优劣及风险控制措施,为构建高可用、高可靠的分布式系统提供了完整的技术指南。

zane的博客 514

机器学习(三) ----------线性回归算法(梯度下降+正则化)

线性回归算法在机器学习中具有核心地位,它以其简单性和直观性为基础,为理解数据间的关系提供了基本框架。作为许多复杂算法的基础,线性回归不仅用于预测目标变量,还用于解释自变量对目标的影响。同时,它也是机器学习入门的经典算法,对于推广机器学习知识和技术具有重要意义。

2301_77539454的博客 1865

Springboot整合Elasticsearch 7.X以及相关API的使用

在idea中创建springboot项目,并选中Elasticsearch依赖 自定义elasticsearch版本,保证跟本地一致(由于我本机安装的是7.X版本的),同时再添加上相关json依赖。 <dependency> <groupId>com.alibaba</groupId> <ar...

鹿谷門実的博客 2450

一次点击跑通:用 Postman 自动获取并携带 CSRF token,测试 SAP OData 写操作

SAP OData 写操作自动化测试方案 针对 SAP Gateway OData 服务写操作中常见的 CSRF token 验证问题,本文提出了一套基于 Postman 的自动化解决方案: 问题分析:解释了 CSRF token 的验证机制及其必要性,说明手工测试效率低下的原因 解决方案: 使用 Postman 环境变量存储 token 通过脚本自动获取并传递 token 利用 Collection Runner 实现一键执行 实施步骤: 创建环境变量存储 token 第一个请求获取 token 并存入变

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 301

ElasticSearch全文搜索引擎入门到入土

ElasticSearch全文搜索引擎,- 全文搜索Lucene入门 - ElasticSearch概述和安装 - ElasticSearch的基本使用 - ElasticSearch在Java中使用

weixin_48133130的博客 747

彻底讲透 SAP 中的 client-safe:从 CDS、AMDP 到 ABAP Cloud 的客户端隔离设计

SAP系统中的client-safe概念定义了技术边界:访问client-dependent数据的对象必须确保只看到单个client数据,而访问client-independent数据的对象则天然满足条件。这一原则直接影响CDS视图、AMDP等核心组件,并与ABAP Cloud开发模型紧密集成。在业务系统中,client isolation要求用户只能看到当前登录client的数据。SAP通过语言版本、对象规则和静态检查强制执行这一约束,特别是在ABAP Cloud开发中,AMDP方法和发布的API必须满足

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3260

零基础做AI漫剧:Kimi K2.5写本 + Flux生图 + Seedance 2.0动效的保姆级教程

很多零基础小伙伴想做AI漫剧,却被“写剧本、画分镜、做动效”三大难题劝退——不会写剧情、不会画插画、不会做动态,觉得门槛太高。其实不用慌!今天就给大家带来保姆级教程,全程用Kimi K2.5(写剧本)、Flux(生分镜图)、Seedance 2.0(做动效)三个工具,不用专业技能,不用手动绘画,零基础也能在1小时内做出1分钟完整AI漫剧,全程步骤拆解、示例齐全,跟着做就能出片!

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 3031

从基础到快速实践:Elasticsearch的应用与操作指南

本文介绍了 Elasticsearch(ES)及其在 Java 环境中的应用,重点讲解了 Elasticsearch 的基本原理、数据模型和常见操作。通过具体的 Spring Boot 示例,展示了如何将 Elasticsearch 集成到 Java 项目中,实现高效的数据存储、索引与检索。文章还涵盖了如何使用 Elasticsearch 进行文档管理、复杂查询和数据分析,帮助开发者提升系统的搜索性能与可扩展性。通过学习本文,读者将能够更好地理解和应用 Elasticsearch,优化项目中的数据处理和搜索

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 6万+

YOLOv8改进:注意力系列篇 |高效的通道先验卷积注意力(CPCA) | 中科院 2023.6

高效的通道先验卷积注意力(CPCA)方法,支持注意力权重在通道和空间维度上的动态分布;

会AI的学姐 2041

SpringBoot整合ES的三种方式(API、REST Client、Data-ES)

1. 整合案例一(使用Java API)  这种方式,官方已经明确表示在ES 7.0版本中将弃用TransportClient客户端,且在8.0版本中完全移除它,我在学习ES时,版本已经是6.4.0了。 版本搭配:SpringBoot 2.0.5,ES 5.5.0 1.1 依赖如下: &amp;amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8

jacksonary的博客 9万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

ElasticSearch整合SpringBoot的API操作

  在我们熟悉了 es 的基本rest 的操作之后,我们将使用SpringBoot进行整合,进一步熟悉Java API的相关操作。 1.创建一个标准的Springboot项目,引入Boot相关依赖之后,还需要导入依赖(与es服务端版本需要保持一致): <dependency> <groupId>org.elasticsearch.client</g...

吴振照 842

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

SpringBoot整合ES操作API

SpringBoot整合ES操作API 1.RestHighLevelClient 依赖 ES依赖 <!--引入es的坐标--> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId>

weixin_42228945的博客 510

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: ClickHouse-CPU、内存参数设置
下一篇: 7、跨域问题分析及解决方案
程序员老石
博客等级 码龄8年 286粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值