文档章节

随手笔记:干货不能停,如何通过Spring管理ElasticSearch创建Client

ringingks
 ringingks
发布于 2017/06/17 21:52
字数 295
阅读 84
收藏 0

友情提示:代码是基于elasticsearch 2.2.0版本编译,2.x版本理论上可以完全参考,其他版本建议酌情参考。

之前写了一下如何创建Client,这次在提高一点,聊一下如何使用Spring管理Client。基本原理其实也使用Spring注入ElasticSearch的Client实例,注意(这里并不是使用的spring-data-elasticsearch项目),而是使用原始的ElasticSearch的API。

由于ElasticSearch的Client实例是需要经过一定的处理组织而来,不太好直接在Spring的xml中使用Bean标签进行初始化,所以在此使用@Configuration注解,来在Java类中,生成bean实例,这个注解和使用spring的xml进行注入功能大致相同,只不过能直接在Java类生成一个类实例,比较灵活而已。

代码效果如下:

 

就这样一个ElasticsearchFactoryBean的工厂类就创建好了。

接下来是关于调用,十分的 so easy:

@Resource(name = "transportClient")
private Client client;

 

补充一下相关的import

import java.net.InetAddress;

import org.apache.log4j.Logger;
import org.elasticsearch.client.Client;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.InetSocketTransportAddress;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

 

© 著作权归作者所有

ringingks
粉丝 0
博文 6
码字总数 4129
作品 0
成都
项目经理
私信 提问
聊聊springboot elasticsearch autoconfigure

序 本文主要研究一下springboot elasticsearch autoconfigure ElasticsearchAutoConfiguration spring-boot-autoconfigure-2.1.4.RELEASE-sources.jar!/org/springframework/boot/autoconfi......

go4it
04/17
74
0
Spring Data Elasticsearch 和 x-pack 用户名/密码验证连接

使用Spring Data Elasticsearch连接elasticsearch时,正常情况下只需要在application.properites文件中添加如下配置即可连接: 以看到Spring Data Elasticsearch连接elasticsearch很简单。 ...

kipeng300
2018/04/24
5.2K
0
跟我学Spring Cloud(Finchley版)-26-使用Elasticsearch作为Zipkin Server的后端存储

前文搭建的Zipkin Server是没有后端存储的——数据会存储在Zipkin的内存中。这一般不适合生产,本节来探讨如何将Zipkin中的数据持久化。 Zipkin支持多种存储: 内存(默认) MySQL(数据量大...

周立_ITMuch
04/18
37
0
基于Docker部署ELK (Elasticsearch, Logstash, Kibana)集中日志处理平台,及在Spring Boot应用

当我们还是单体部署我们的Spring Boot项目的时候,日志通常都是放在我们的Linux服务器目录,使用简单的Spring Boot已经包含的Logback框架即可实现。当我们基于Docker部署我们的分布式或者集群...

ImWiki
2018/05/27
0
0
聊聊springboot elasticsearch healthIndicator

序 本文主要研究一下springboot elasticsearch healthIndicator ElasticsearchHealthIndicatorProperties spring-boot-actuator-autoconfigure-2.1.4.RELEASE-sources.jar!/org/springframe......

go4it
04/18
90
0

没有更多内容

加载失败,请刷新页面

加载更多

常用正则表达式整理

本文转载于:专业的前端网站➩常用正则表达式整理 /*以下为亲自验证过,备用*/   数字,0-100,包含0和100,且小数点后最多有三位: /^(\d{1,2}(\.\d{1,3})?|100)$/ 匹配正整数:^[1-9]*[1-9][...

前端老手
25分钟前
5
0
Java 中可重入锁、不可重入锁的测试

Java 中可重入锁、不可重入锁的测试 可重入锁 指在同一个线程在外层方法获取锁的时候,进入内层方法会自动获取锁。 为了避免死锁的发生,JDK 中基本都是可重入锁。 下面我们来测试一下 sync...

ConstXiong
25分钟前
5
0
怎么给视频变音

怎么让录制视频中的声音变得可爱吗?其实方法非常的简单,只要进行视频变音制作就好了,那怎么给视频变音呢?下面就一起来看看视频变音的具体制作方法吧! 具体步骤如下: 第一步: 打开手机...

白米稀饭2019
30分钟前
4
0
学习记录(ECMAScript 6.0入门_day01重点总结)

课程目标 1、ECMAScript6和JAVAScript关系 ES6是JAVAScript的规格,JavaScript是ES6的一种实现。 变量声明: 局部变量:let 它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内...

庭前云落
41分钟前
4
0
springboot 源码SpringApplication的run方法解析

public ConfigurableApplicationContext run(String... args) {//记录启动应用启动时间StopWatch stopWatch = new StopWatch();stopWatch.start();ConfigurableApplicationCo......

dudu
44分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部