RestClient操作 Elasticsearch(ES)索引库和文档
1238
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
RestClient操作 Elasticsearch(ES)索引库和文档摘要
掌握目标
本文旨在介绍使用Java High-Level Rest Client操作Elasticsearch(ES)的索引库和文档的基本流程及相关技术细节。
什么是RestClient
RestClient是ES官方提供的客户端工具,可通过HTTP请求发送DSL语句操作ES。Java Rest Client分为两种:Low-Level和High-Level版本,本文重点讲解的是High-Level Rest Client。
索引库操作
项目准备
本文通过一个名为“elastic-demo”的SpringBoot项目进行演示,数据来源于数据库表结构“tb_wine_shop”,并通过mapping映射将表结构与ES索引库结构对接。
初始化RestClient
通过引入依赖和配置RestHighLevelClient实现初始化。配置包括指定ES的用户名和密码,并将其注入Spring容器。
创建、删除及判断索引库
创建索引库通过CreateIndexRequest实现,主要步骤包括创建Request对象、准备DSL语句和发送请求。类似地,删除索引库使用DeleteIndexRequest,而判断索引库是否存在使用GetIndexRequest。
文档操作
新增文档
通过创建实体类(WineShop)及其映射类(WineShopDoc),将数据库数据导入ES。新增文档的步骤包括创建IndexRequest、准备JSON文档和发送请求。
查询文档
查询文档通过GetRequest实现,重点在于解析返回的JSON数据并转换为实体类对象。
删除文档
删除文档使用DeleteRequest,步骤包括创建Request对象、发送请求并完成删除操作。
修改文档
修改文档分为全量修改和增量修改。增量修改通过UpdateRequest实现,可直接更新指定字段值。
批量导入文档
批量导入文档通过BulkRequest实现,可将多个新增、修改或删除操作组合成批处理请求。
总结
Java Rest Client操作ES的索引库和文档遵循类似的流程:
- 索引库操作:初始化客户端、创建Request对象、准备DSL、发送请求。
- 文档操作:初始化客户端、创建Request对象、准备参数、发送请求、解析结果。
掌握这些基本步骤即可灵活操作ES进行索引库及文档的增删改查。
springboot葵花宝典
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
白皮书上线