首页 理论教育 SpringBoot集成JavaRestClient解决方案

SpringBoot集成JavaRestClient解决方案

时间:2023-11-22 理论教育 版权反馈
【摘要】:Java Rest Client是相对于Java API更加轻量级的客户端,具有依赖少、自动负载均衡、使用方便、支持异步调用、权限认证、超时及失败重试等特点,而且Java Rest Client兼容所有的ElasticSearch版本并且完全遵守Restful API风格。添加依赖在pom文件中添加如下依赖:添加完上面的依赖,就可以在项目中使用Java Rest Client工具了。初始化客户端Java Rest Client主要的工具类为RestClient,此工具类用于对ElasticSearch进行相关的数据操作。执行上面的程序,可见Java Rest Client使用非常方便。

SpringBoot集成JavaRestClient解决方案

ElasticSearch的访问支持多种语言,在官网上可以看ElasticSearch使用标准的RESTful API和JSON,构建和维护了很多其他语言的客户端,例如Java,Python,.NET和PHP等。

Java Rest Client是相对于Java API更加轻量级的客户端,具有依赖少、自动负载均衡、使用方便、支持异步调用、权限认证、超时及失败重试等特点,而且Java Rest Client兼容所有的ElasticSearch版本并且完全遵守Restful API风格。下面简要演示其使用方法。

(1)添加依赖

在pom文件中添加如下依赖:

添加完上面的依赖,就可以在项目中使用Java Rest Client工具了。

(2)初始化客户端

Java Rest Client主要的工具类为RestClient,此工具类用于对ElasticSearch进行相关的数据操作。代码如下:

注意由于一般线上业务ElasticSearch为集群模式,所以RestClient在创建的时候,可以传递多个HttpHost,这样RestClient也会进行相应的负载均衡。

为防止业务数据的泄露,实际业务中的ElasticSearch般会添加Http基本认证,那么就需要换一种连接ElasticSearch的方式,使用CredentialsProvider的方式连接ElasticSearch,具体使用方法如下:(www.xing528.com)

(3)查询ElasticSearch信息

使用如上方法,会输出ElasticSearch的版本信息等,等同于访问http://{ElasticSearchIP}: 9200。

(4)创建索引

创建一个名为java-dev-map-rest的索引,设置它的分析器用IK,使用ik_smart分词器;并创建名为news的类型,它只有一个message字段,此字段同样使用ik_smart分词器。这里需要以put方式提交请求。创建索引和类型的方法如下:

(5)添加文档数据

(6)查询数据

希望查询关键词“无人机”,并以红色字体显示出关键字(<font color='red'>关键词</font>),来凸显关键词功能。

执行上面的程序,可见Java Rest Client使用非常方便。在实际业务中,可以先在Postman等工具中测试好ElasticSearch网络请求,然后复制到NStringEntity中,就可以完成相应的业务操作。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈