Elasticsearch---spring-boot-starter-data-elasticsearch整合攻略详解

本文详细介绍了如何在Spring Boot应用中整合Elasticsearch,包括版本匹配、配置、索引映射创建、使用Spring Data操作Es以及@Query注解和restTemplate的高级查询方法。通过实例展示了基础操作、自定义查询以及分页排序和高亮等特性。
摘要由CSDN通过智能技术生成

前言

首先要确保自己引入的spring-boot-starter-data-elasticsearch版本与elasticsearch一直,通常情况下会遇到使用了如,spring-boot-dependencies,parent等版本依赖管理导致es版本不对应的情况。此时记得手动指定如下jar版本例如我使用的是7.12.0:

  <!-- 重写覆盖 spring-boot-dependencies 中的依赖版本  -->
            <dependency>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-elasticsearch</artifactId>
                <version>4.2.0</version>
            </dependency>
            <dependency>
                <groupId>org.elasticsearch.client</groupId>
                <artifactId>elasticsearch-rest-high-level-client</artifactId>
                <version>${elasticsearch.version}</version>
            </dependency>
            <dependency>
                <groupId>org.elasticsearch</groupId>
                <artifactId>elasticsearch</artifactId>
                <version>${elasticsearch.version}</version>
            </dependency>
            <dependency>
                <groupId>org.elasticsearch.client</groupId>
                <artifactId>elasticsearch-rest-client</artifactId>
                <version>${elasticsearch.version}</version>
            </dependency>

版本对应关系:https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#preface.versions
在这里插入图片描述

一、配置

这里简单使用配置文件方式演示

  elasticsearch:
    rest:
      username: elastic
      password: xxxxxx
      uris: http://xxxxxxxxxx:9200
      connection-timeout: 1000
      read-timeout: 1000

二、创建索引映射

这里我们尽量使用spring-data提供的自动创建方式,避免手动创建致使字段无法对应导致出错。尤其是date类型字段最容易产生问题,依照下方实例spring在启动时会自动判断是否已经创建如果没有会自动帮我们创建。同时使用@setting与@mapping注解通过导入json配置文件的方式丰富mapping创建。

@Persistent
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
public @interface Document {

    String indexName(); // 索引库的名称,个人建议以项目的名称命名

    @Deprecated
    String type() default &#
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值