目录
- 二、Elasticsearch 是什么?
- 三、Elasticsearch 安装
- 四、Springboot 集成 Elasticsearch 的方式
- 五、创建项目集成 Elasticsearch
-
- 2.创建 Spring Initializr 项目 es
-
- (3).新建实体类 User
- (4).新建 dao 接口类 UserRepository
- (5).新建服务接口类 UserService
- (6).新建服务实现类 UserServiceImpl
- (7).新建控制类 UserController
一、前言
网上 springboot 集成 Elasticsearch 的文章很多,但随着 springboot 和 Elasticsearch 版本的不断升级,绝大多数文章使用的集成方式和调用的方法已经过时,几乎找不到能真正适用最新 springboot 版本和最新 Elasticsearch 版本的文章。
本文正是基于最新 springboot 版本和最新 Elasticsearch 版本实现了集成。
二、Elasticsearch 是什么?
Elasticsearch(ES) 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 语言开发的,并作为 Apache 许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch 用于云计算中,能够达到实时搜索、稳定、可靠、快速、安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby 和许多其他语言中都是可用的。根据 DB-Engines 的排名显示,Elasticsearch 是最受欢迎的企业搜索引擎,其次是 Apache Solr,也是基于 Lucene。
三、Elasticsearch 安装
见 CentOS7和8下安装Elasticsearch 和 ElasticSearch ik分词器的安装使用 。
四、Springboot 集成 Elasticsearch 的方式
1.TransportClient
TransportClient 在 Elasticsearch 7.0.0 中已被弃用,取而代之的是 Java High Level REST Client,并将在 Elasticsearch 8.0中删除。在项目中不再建议使用,详见
官方链接: https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-api.html#java-api

2.Java REST Client
Java REST Client 在 Elasticsearch 7.15.0 中已弃用,取而代之的是 Java API Client。在项目中不再建议使用,详见
官方链接: https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/index.html

3.Java API Client
官方推荐使用的方式。详见
官方链接: https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/current/index.html
4.Spring Data Elasticsearch
Spring Data Elasticsearch 项目提供了与 Elasticsearch 搜索引擎的集成。Spring Data Elasticsearch 的关键功能领域是一个以 POJO 为中心的模型,用于与 Elastichsearch 文档进行交互,并轻松编写存储库数据访问层。
本文正是基于 Spring Data Elasticsearch 方式实现 springboot 集成 Elasticsearch。