如何高效使用ElasticSearch Java API进行实战?
摘要:前言 在上一篇中介绍了 "ElasticSearch实战系列二: ElasticSearch的DSL语句使用教程 图文详解" ,本篇文章就来讲解下 ElasticSearch 6.x官方J
前言
在上一篇中介绍了ElasticSearch实战系列二: ElasticSearch的DSL语句使用教程---图文详解,本篇文章就来讲解下 ElasticSearch 6.x官方Java API的使用。
ElasticSearch JAVA API
目前市面上有几种常见的ElasticSearch Java API架包,JestClient、SpringBoot整合的SpringData、Spring整合的ElasticsearchTemplate、Elasticsearch Bboss等一些开源架包,上述这些第三方整合的架包中,基本已经支持日常的使用,除了支持的ES版本会低一些而已。
本文介绍的是ElasticSearch官方的Java High Level REST Client的使用,Java High Level REST Client是ElasticSearch官方目前推荐使用的,适用于6.x以上的版本,要求JDK在1.8以上,可以很好的在大版本中进行兼容,并且该架包自身也包含Java Low Level REST Client中的方法,可以应对一些特需的情况进行特殊的处理, 它对于一些常用的方法封装Restful风格,可以直接对应操作名调用使用即可,支持同步和异步(Async)调用。
这里我们的使用也可以直接对应上一篇文章中的DSL语句使用,这样的话可以非常方便的对照和学习使用。
在对下述进行操作时,我们先来看下Elasticsearch Java High Level REST Client的初始化连接写法吧。
RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(new HttpHost(elasticIp, elasticPort)));
是不是很简单呢,关闭也很简单,client不为空直接close即可!
一、新增数据
ElasticSearch可以直接新增数据,只要你指定了index(索引库名称)和type(类型)即可。在新增的时候你可以自己指定主键ID,也可以不指定,由 ElasticSearch自身生成。Elasticsearch Java High Level REST Client新增数据提供了三种方法,这里我们就来看一下这三种写法吧。
