springboot 、spring-data-elasticsearch、elasticserach的版本对应关系

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: springboot 、spring-data-elasticsearch、elasticserach的版本对应关系
  1. 由于工作需要,亲自试验了,elasticsearch 5.6.80, elasticsearch 6.4.2, elasticsearch 7.5.0, 三个版本的es,发现其中的差别还是很大的,比如 es5.6.80 还支持 一个index下建立多个type,而到6.4.2 以及7.5.0以后就不支持了,添加多type的时候会报错。
  2. 计划使用 springboot+spring-data-elasticsearch操作es,遍引入的以下的maven坐标:


<!---开箱即用,默认使用的和当前使用的springboot的一一致的spring-data-elasticsearch-->
     <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>


这其中有个坑就是,如果你想升级单独升级pring-boot-starter-data-elasticsearch 的版本而不升级springboot的版本,启动的时候就会报错,建议还是按照官方的版本对应关系进行选择,避免不必要的麻烦:

官方参考链接;

https://docs.spring.io/spring-data/elasticsearch/docs/3.2.4.RELEASE/reference/html/#reference

3. spring -data-elasticsearch 不同的版本之间的api也有所不同,建议不要随意升级

4. 把springboot 从2.0.3 升级到2.2.0版本 会出现 循环依赖注入问题,比如 在a类中依赖了b类,然后在b类又依赖了a类,导致启动报错,原本在2.0.3版本的时候并没有出现问题,升级以后才出现这个问题,怀疑是springboot 2.2.0 对循环依赖做了一个不同的处理(还不是很确定),解决这个问题也很简单如下图在自注入注解的地方加上@Lazy注解即可:


public class A{
@Autowired
@Lazy
private B b;
...
}
public class B{
@Autowired
@Lazy
private A a;
...
}


ElasticSearch实战 之 es的安装和使用 https://blog.csdn.net/weter_drop/article/details/103990959


相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
3天前
|
JSON Java API
springboot集成ElasticSearch使用completion实现补全功能
springboot集成ElasticSearch使用completion实现补全功能
14 1
|
11天前
|
druid Java Maven
|
18天前
|
Java 测试技术 开发者
springboot学习四:Spring Boot profile多环境配置、devtools热部署
这篇文章主要介绍了如何在Spring Boot中进行多环境配置以及如何整合DevTools实现热部署,以提高开发效率。
40 2
|
18天前
|
前端开发 Java 程序员
springboot 学习十五:Spring Boot 优雅的集成Swagger2、Knife4j
这篇文章是关于如何在Spring Boot项目中集成Swagger2和Knife4j来生成和美化API接口文档的详细教程。
40 1
|
18天前
|
Java API Spring
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中拦截器的入门教程和实战项目场景实现的详细指南。
14 0
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
|
18天前
|
Java API Spring
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中过滤器的基础知识和实战项目应用的教程。
16 0
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
|
18天前
|
Java 测试技术 Spring
springboot学习三:Spring Boot 配置文件语法、静态工具类读取配置文件、静态工具类读取配置文件
这篇文章介绍了Spring Boot中配置文件的语法、如何读取配置文件以及如何通过静态工具类读取配置文件。
21 0
springboot学习三:Spring Boot 配置文件语法、静态工具类读取配置文件、静态工具类读取配置文件
|
18天前
|
Java Maven Spring
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
这篇文章介绍了在IntelliJ IDEA社区版中创建Spring Boot项目的三种方法,特别强调了第三种方法的详细步骤。
68 0
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
|
15天前
|
Java Maven Spring
查看springboot版本支持最高的java版本
截至最近更新,Spring Boot 3.0及以上版本支持的最高Java版本为Java 17。鉴于技术的不断演进,建议直接参考Spring Boot的官方文档获取最准确的支持信息,因为这些版本兼容性可能会随着新版本的发布而有所变化。选择与你的Spring Boot版本相匹配的Java版本,可以确保充分利用框架特性,同时保证项目的稳定性和前瞻性。
28 0
|
18天前
|
Java Spring
springboot 学习十一:Spring Boot 优雅的集成 Lombok
这篇文章是关于如何在Spring Boot项目中集成Lombok,以简化JavaBean的编写,避免冗余代码,并提供了相关的配置步骤和常用注解的介绍。
62 0