- 浏览: 46778 次
最新评论
基于spring data的Elastic Search的配置示例
import java.net.InetAddress; import java.net.UnknownHostException; import java.util.ArrayList; import org.apache.commons.lang3.tuple.ImmutablePair; import org.apache.commons.lang3.tuple.Pair; 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.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.env.Environment; import org.springframework.data.elasticsearch.core.ElasticsearchOperations; import org.springframework.data.elasticsearch.core.ElasticsearchTemplate; import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories; import com.xxx.cms.config.props.EsProps; xxx @Configuration @EnableElasticsearchRepositories( basePackages={"com.xxx.cms.elasticsearch.repositories"} ) public class ElasticSearchConfig { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired Environment env; @Bean public ElasticsearchOperations elasticsearchTemplate() { return new ElasticsearchTemplate(elasticsearchClient()); } @Bean public EsProps esProps(){ EsProps esProps = new EsProps(); esProps.setInit(Boolean.valueOf(env.getProperty("hs.cms.srv.es.init"))); return esProps; } @Bean public Client elasticsearchClient(){ String esNodes = env.getProperty("hs.cms.srv.es.cluster.nodes"), clusterName = env.getProperty("hs.cms.srv.es.cluster.name"); ArrayList<Pair<String, Integer>> nodePairs = new ArrayList<>(); for (String nodeStr : esNodes.split(",")) { String[] nodeSpliArr = nodeStr.split(":"); Pair<String, Integer> pair = new ImmutablePair<>(nodeSpliArr[0], Integer.valueOf(nodeSpliArr[1])); nodePairs.add(pair); } Settings settings = Settings.settingsBuilder() .put("cluster.name", clusterName) .build(); TransportClient client = TransportClient.builder() .settings(settings) .build(); for (Pair<String, Integer> pair : nodePairs) { try { client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(pair.getLeft()), pair.getRight())); } catch (UnknownHostException e) { logger.error("初始化Es配置出错", e); return null; } } return client; } }
发表评论
-
简单的压测模拟
2018-05-11 19:52 675import java.time.Duration; i ... -
Java的驼峰与下划线的属性对象互相转换
2018-05-11 19:50 8426import com.xxxx.util.consta ... -
Elastic Search搜索实例
2019-06-16 18:30 645要从现在的公司离职了。记录一下自己针对我们的自己需求所做的搜索 ... -
针对基于Redis Cluster的接口数据缓存删除实现
2018-03-26 10:35 1249首先定义个工具interface,基于Java 8的实现. 主 ... -
简单ELK配合logback搭建日志监控中心
2018-03-20 17:30 1348今天得闲就自己搭了个ELK示例,过程挺简单的。 Elas ... -
spring的基于java的项目配置示例2
2018-03-20 17:32 852import com.xxx.support.config ... -
HttpClient实例
2018-03-16 08:15 664import java.io.IOException; ... -
spring的基于java的项目配置示例1
2018-03-16 08:26 941spring的基于java的项目配置示例。 impor ... -
方便jedis cluster操作的工具类
2018-03-15 17:37 3029由于redis的集群 redis cluster不支持keys ... -
爬虫基础类
2018-03-15 17:28 810自己封装的爬虫基础类。 public interfac ... -
基于AOP的ajax的referrer判断
2018-03-15 17:23 1564网页中ajax请求的referrer的值是当前域名。(其实这个 ... -
Java Timestamp从MySQL数据库取出的字符串转换为LocalDateTime
2016-01-26 16:08 9931最新在工作中使用了Java 8的LocalDate ... -
reviewC指针
2014-03-02 22:05 372由于要考试,有C的考核内容。所以今天把C拉出来又看了下,其实基 ... -
Python2.X内置函数学习
2013-12-19 21:52 11711.apply()函数 学过Python的都知道P ... -
学习Python中遇到的问题
2013-09-04 23:26 721最近学习Python中。 先上代码: # -*- codi ...
相关推荐
本示例程序主要是对spring data elasticsearch的实践,包含接口声明查询、注解查询和自定义repository查询。运行TestCase时候,请先将配置文件中ES服务端ip:port配置替换成真是的服务端地址
本示例程序主要是对spring data elasticsearch的实践,包含接口声明查询、注解查询和自定义repository查询。运行TestCase时候,请先将配置文件中ES服务端ip:port配置替换成真是的服务端地址
`spring-data-elasticsearch-sample-application-master` 是一个包含整合示例的项目,它展示了如何在实际应用中使用 Spring Data Elasticsearch。这个项目可能包含了以下部分: 1. **配置**: 应用的配置文件(如 `...
"SpringBoot整合Spring Data Elasticsearch的过程详解" SpringBoot整合Spring Data ...通过以上介绍,SpringBoot整合Spring Data Elasticsearch的过程详解可以帮助开发者更好地理解Elasticsearch的使用和配置。
本项目是一个基于Maven构建的示例,旨在帮助我们理解如何在实际应用中整合Spring Data Elasticsearch。下面我们将深入探讨这个主题。 首先,让我们了解Spring Data Elasticsearch的核心概念。它是Spring Data项目的...
"基于Spring Data Jest的Elasticsearch数据统计示例" 本文主要介绍了基于Spring Data Jest的Elasticsearch数据统计示例,通过使用Spring Data Jest链接Elasticsearch,实现数据统计示例。同时,本文也介绍了命令...
2. Spring Data Elasticsearch:展示了基本文本搜索、地理空间搜索和分面搜索的示例。使用了High Level REST Client作为模板和仓库的后端。 - example:展示了使用基本文本搜索、地理空间搜索和分面搜索的示例。 -...
- `pom.xml`:Maven 项目配置,包含 Elasticsearch 和 Spring Data Elasticsearch 的依赖。 - `application.properties`:Spring Boot 的配置文件,配置 Elasticsearch 的连接信息。 - `ElasticsearchConfig.java`:...
本示例程序主要是spring 整合elasticsearch-2.3.5的实践,测试时先将配置文件es.properties中ES服务端es.ip,es.port, es.cluster 配置替换成自己的服务器信息
Spring Data Elasticsearch通过简化配置和API调用,降低了与Elasticsearch交互的复杂性。 **一、Spring Data Elasticsearch的核心概念** 1. **Repository抽象**:Spring Data Elasticsearch提供了一种基于...
首先,集成Elasticsearch到SpringMVC项目中,我们需要在项目的`pom.xml`文件中添加Elasticsearch和Spring Data Elasticsearch的相关依赖。确保你的Maven配置正确,以便能够从Maven仓库下载所需的库。 ```xml <!--...
首先,我们要了解Spring Data Elasticsearch,这是Spring提供的一个模块,它为Elasticsearch提供了数据访问支持。通过使用Spring Data Elasticsearch,我们可以方便地实现Elasticsearch的CRUD(创建、读取、更新和...
《Spring Data Elasticsearch实战:构建应用示例》 在IT领域,Elasticsearch作为一个强大的全文搜索引擎,因其高效、灵活和可扩展性,被广泛应用于数据检索、日志分析、监控等多种场景。Spring Data Elasticsearch...
基于Spring Batch向Elasticsearch批量导入数据示例 本文介绍了基于Spring Batch向Elasticsearch批量导入数据示例,旨在解决大规模数据从数据库导入Elasticsearch时的效率问题。Spring Batch框架使用ItemReader分页...
**Spring Boot Elasticsearch 演示** 在现代Java开发中,Spring Boot框架...遗憾的是,实际的源代码和具体实现不在提供的文件列表中,但通过上述步骤,你应该能理解如何构建一个基本的Spring Boot Elasticsearch示例。
**Spring Data Elasticsearch 示例详解** Spring Data Elasticsearch 是一个用于简化与 Elasticsearch 交互的库,它是 Spring Data 家族的一部分,旨在提供一种声明式的方式来进行索引管理和文档操作。本示例项目,...
考虑到性能,可以配置Elasticsearch的刷新间隔、分片数和副本数等参数,以及利用Spring Data Elasticsearch的批量操作。 9. **错误处理**: 为处理可能出现的Elasticsearch异常,如连接失败或查询错误,确保在...
Spring Boot 是一个基于 Java 的框架,用于快速构建独立的、生产级别的基于 Spring 的应用程序,而 Spring Data Elasticsearch 是 Spring Data 家族中的一员,负责处理 Elasticsearch 的数据访问。下面将详细介绍 ...
本文将详细讲解如何将Elasticsearch与Spring Data结合使用,包括所需的坐标(依赖)、示例代码以及实体类的设计。 首先,集成Elasticsearch与Spring Data的关键在于正确配置项目的依赖。在Maven项目中,你需要在pom...
1. **添加依赖**:在SpringBoot项目的pom.xml文件中,引入Elasticsearch的Spring Data Elasticsearch依赖。确保版本与Elasticsearch服务器版本匹配。 ```xml <groupId>org.springframework.boot <artifactId>...