0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SpringBoot整合ElasticSearch

Java开发 来源:Java开发 作者:Java开发 2023-03-09 14:56 次阅读

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

ElasticSearch安装方式参考:

Linux安装ElasticSearch

Linux安装elasticsearch-head

Windows安装ElasticSearch

1 Spring项目

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

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

1.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();
    }
}

1.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即可像常规的数据库那样进行增删改查的操作。

1.3 配置数据库

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

2 运行项目

2.1 添加

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

添加User类的请求体:

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

可以看到添加成功:

2.2 读取

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

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

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

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

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

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

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

代码的路

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ES
    ES
    +关注

    关注

    0

    文章

    11

    浏览量

    20071
  • JAVA
    +关注

    关注

    19

    文章

    2978

    浏览量

    105290
  • 数据库
    +关注

    关注

    7

    文章

    3855

    浏览量

    64797
  • SpringBoot
    +关注

    关注

    0

    文章

    174

    浏览量

    202
收藏 人收藏

    评论

    相关推荐

    如何在Linux环境下高效安装部署和配置Elasticsearch

    /CentOS-7-x86_64-DVD-2009.iso elasticsearch-7.10.0-linux-x86_64.tar.gz https://www.elastic.co/cn/downloads/past-releases
    的头像 发表于 01-16 11:49 324次阅读

    在华为云上通过 Docker 容器部署 Elasticsearch 并进行性能评测

      2.2 安装 Docker   2.3 启动 Docker   3. 使用Docker部署Elasticsearch   3.1 拉取Elasticsearch镜像   3.2 启动
    的头像 发表于 01-13 13:36 133次阅读
    在华为云上通过 Docker 容器部署 <b class='flag-5'>Elasticsearch</b> 并进行性能评测

    基于Java、springboot、avue技术开发的医院绩效核算系统源码

    ,为绩效考核提供数据依据,为领导提供智能决策支持,通过静态、动态、图形表现等多种形式提供了科学的、准确的、快速的、直观的分析数据、图表等。  医院绩效考核系统源码开发环境: Java+springboot+mybaits+avue+MySQL+maven+Visual
    的头像 发表于 01-11 17:31 154次阅读
    基于Java、<b class='flag-5'>springboot</b>、avue技术开发的医院绩效核算系统源码

    构建高效搜索解决方案,Elasticsearch &amp; Kibana 的完美结合

    前言 构建高效搜索解决方案,FlexusX 服务器与 Elasticsearch & Kibana 的完美结合,为企业带来云端搜索新体验。FlexusX 实例以其卓越性能与灵活扩展性,确保高并发搜索
    的头像 发表于 12-27 13:48 140次阅读
    构建高效搜索解决方案,<b class='flag-5'>Elasticsearch</b> &amp; Kibana 的完美结合

    SSM与Hibernate的整合使用

    作为Java持久化框架的代表,常被整合到SSM框架中。 SSM框架简介 SSM框架是指Spring、SpringMVC和MyBatis三个框架的整合使用。Spring负责依赖注入和事务管理
    的头像 发表于 12-17 09:14 250次阅读

    极氪科技与领克汽车完成战略整合

    近日,浙江极氪智能科技有限公司与领克汽车宣布完成了一项重大的战略整合整合后,新公司正式命名为“极氪科技集团”,并计划在未来两年内,将年产销规模提升至百万级别,成为高端豪华新能源汽车领域的佼佼者
    的头像 发表于 12-04 10:57 437次阅读

    Elasticsearch 再次开源

    Elasticsearch 和 Kibana 又可以被称为开源了。很难表达这句话让我有多高兴。我激动得简直要跳起来了。我们 Elastic 的所有人都是如此。开源是我的 DNA。这也是Elastic的DNA。能够再次将 Elasticsearch 称为开源,我感到非常高兴
    的头像 发表于 11-13 12:14 189次阅读
    <b class='flag-5'>Elasticsearch</b> 再次开源

    赫斯特与OpenAI达成内容整合协议

    近日,美国大众媒体和商业信息集团赫斯特宣布与OpenAI达成了一项内容合作协议。根据协议,赫斯特的报纸和国内杂志内容将被整合到OpenAI的产品中,为用户带来更加丰富和实用的信息体验。
    的头像 发表于 10-09 16:28 338次阅读

    整合电源正常信号

    电子发烧友网站提供《整合电源正常信号.pdf》资料免费下载
    发表于 09-24 11:37 0次下载
    <b class='flag-5'>整合</b>电源正常信号

    软件系统的数据检索设计

    软件系统的数据检索设计 随着业务量加大,数据检索量也会日益增多,为了减轻数据库压力,本系统采用ElasticSearch来实现数据检索功能。 简单来说,Elasticsearch 是一个实时的分布式
    的头像 发表于 08-22 14:08 323次阅读
    软件系统的数据检索设计

    统一日志数据流图

    统一日志数据流图 日志系统数据流图 系统进行日志收集的过程可以分为三个环节: (1)日志收集和导入ElasticSearch (2)ElasticSearch进行索引等处理 (3)可视化操作,查询等
    的头像 发表于 08-21 15:00 368次阅读
    统一日志数据流图

    嵌入式软件开发与AI整合

    嵌入式软件开发与AI整合是当前技术发展的重要趋势之一。随着人工智能技术的快速发展,嵌入式系统越来越多地集成了AI算法,以实现更复杂的智能功能。以下是关于嵌入式软件开发与AI整合的详细分析
    的头像 发表于 07-31 09:25 902次阅读
    嵌入式软件开发与AI<b class='flag-5'>整合</b>

    谷歌Google Calendar、Tasks与Keep应用中成功整合Gemini模型

    谷歌于今日发布的I/O 2024开发者大会新闻中展现了其在Google Calendar, Tasks以及Keep应用中整合Gemini模型的最新进展,为用户呈现出更为智能化的使用体验。
    的头像 发表于 05-15 11:10 418次阅读

    英飞凌宣布与ThistleTechnologies技术整合

    全球半导体巨头英飞凌科技宣布,其OPTIGA™ Trust M安全控制器已成功整合Thistle Technologies的Verified Boot技术。Thistle作为连接设备安全领域的领先者,此次合作将为用户带来前所未有的安全保障。
    的头像 发表于 05-07 15:03 507次阅读

    Rust编写的首个Postgres基础Elasticsearch开源替代品问世

    ,Firebase 开源替代 Supabase,AirTable 开源替代 NocoDB,等等等等,现在又多了 ElasticSearch 开源替代 —— ParadeDB。
    的头像 发表于 02-22 11:34 986次阅读
    Rust编写的首个Postgres基础<b class='flag-5'>Elasticsearch</b>开源替代品问世