写点什么

SpringBoot 整合 ElasticSearch

作者:代码的路
  • 2023-03-09
    北京
  • 本文字数:1003 字

    阅读完需:约 3 分钟

ElasticSearch 是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful 风格接口,多数据源,自动搜索负载等。主要负责将日志索引并存储起来,方便业务方检索查询。

1 安装 ES

下载地址:https://www.elastic.co/cn/downloads/elasticsearch


选择 Windows 版本,我下载的是 7.17.0。解压后即可完成安装。


进入 bin 文件, 双击执行 elasticsearch.bat,然后打开浏览器,进入页面: http://localhost:9200,看到以下输出,表示启动成功。


2 Spring 项目

项目 GitHub 地址:https://github.com/Snowstorm0/learn-es


项目 Gitee 地址:https://gitee.com/Snowstorm0/learn-es

2.1 配置 ES 客户端

public class RestClientConfig extends AbstractElasticsearchConfiguration {    @Override    @Bean    public RestHighLevelClient elasticsearchClient() {        final ClientConfiguration clientConfiguration = ClientConfiguration.builder()                .connectedTo("localhost:9200")                .build();        return RestClients.create(clientConfiguration).rest();    }}
复制代码

2.2 创建 User 类

public class UserEntity {    @Id    @GeneratedValue(strategy = GenerationType.AUTO)    private Integer id;    private String name;    private String job;    private Double deposit;    private Date processTime = new Date();}
复制代码


配置完成后,ElasticSearch 即可像常规的数据库那样进行增删改查的操作。

2.3 配置数据库

spring.datasource.username=rootspring.datasource.password=rootspring.datasource.url=jdbc:mysql://localhost:3306/sys?characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC
复制代码

3 运行项目

3.1 添加

调用添加接口:http://localhost:8080/user/add


添加 User 类的请求体:


{  "id":"1",  "name":"代码的路",  "job":"码农",  "deposit":100.0}
复制代码


可以看到添加成功:


3.2 读取

运行读取接口:http://localhost:8080/user/search/whole?key=码农


可以获得刚写入的 User 类,是完整结构:



运行读取接口:http://localhost:8080/user/search/es?key=码农


可以获得刚写入的 User 类,只有 User 结构:



打开数据库,无需手动创建表结构,即可看到 User 类也已经写入到数据库中:



因此可以刻直接从数据库读取。


学习更多编程知识,请关注我的公众号:


代码的路



发布于: 刚刚阅读数: 4
用户头像

代码的路

关注

公众号:代码的路 2023-01-10 加入

Java、Python、C++、图像处理、深度学习相关知识分享

评论

发布
暂无评论
SpringBoot整合ElasticSearch_Java_代码的路_InfoQ写作社区