java客户端开发_ElasticSearch java 客户端开发

本文介绍了ElasticSearch的Java High Level REST Client,它是官方推荐的替代TransportClient的选择。文章详细讲解了如何配置Maven仓库,建立连接,创建索引,执行索引查询,判断索引是否存在,更新和删除索引,以及批量操作和多条数据查询。通过示例代码展示了各种操作的使用方法。
摘要由CSDN通过智能技术生成

2.1介绍:ES提供了两个JAVA REST client 版本

Java Low Level REST Client :用于Elasticsearch的官方低级客户端。它允许通过http与Elasticsearch集群通信。将请求编排和响应反编排留给用户自己处理。它兼容所有的Elasticsearch版本。(PS:学过WebService的话,对编排与反编排这个概念应该不陌生。可以理解为对请求参数的封装,以及对响应结果的解析)

Java High Level REST Client :用于Elasticsearch的官方高级客户端。它是基于低级客户端的,它提供很多API,并负责请求的编排与响应的反编排。( PS:就好比是,一个是传自己拼接好的字符串,并且自己解析返回的结果;而另一个是传对象,返回的结果也已经封装好了,直接是对象,更加规范了参数的名称以及格式,更加面对对象一点)

( PS:所谓低级与高级,我觉得一个很形象的比喻是,面向过程编程与面向对象编程 )

在 Elasticsearch 7.0 中不建议使用TransportClient,并且在8.0中会完全删除TransportClient。因此,官方更建议我们用Java High Level REST Client,它执行HTTP请求,而不是序列号的Java请求。既然如此,这里就直接用高级了。

2.2 Maven仓库配置

高级客户端要与Elasticsearch集群进行通信,主版本号需要一致,次版本号不必相同。

本案例,es 使用6.8.0版本,而高级客户端使用6.6.2是可以的。例如:6.0客户端能够与任何6.x Elasticsearch节点通信,而6.1客户端肯定能 够与6.1,6.2和任何后来的6.x版本进行通 信,但与旧版本的 Elasticsearch节点通信时可能会存在不兼容的问题,例如6.1和6.0之间, 可能6.1客户端支持elasticsearch 6.0还没出来的API。

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

1

2 org.elasticsearch.client

3 elasticsearch-rest-high-level-client

4 6.6.2

5

View Code

连接到es集群 RestHighLevelClient实例需要低级客户端构建器来构建,

如下所示: RestHighLevelClient client = new RestHighLevelClient(

RestClient.builder(

new HttpHost("192.168.20.210", 9200, "http"))

);

高级客户端将在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值