springboot整合elasticSearch

Elasticsearch简介:
Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。之前我们搜索常用写法为sql中的like语句,但在大数据情况下,查询效率十分缓慢,因此我们就会选择elasticsearch。

elasticsearch常用场景:
百度、Google:我们想寻找一个我们喜欢的电影或者书籍就会去百度或者Google搜索一下。
互联网搜索:电商搜索商品,招聘网站搜索简历或者岗位
现在我们就来整理一下如何将es集成到我们项目中。
一、下载安装elasticsearch
官网地址
下载后解压启动bin目录下的elasticsearch.bat文件,默认端口9200
启动成功在这里插入图片描述
二、下载elasticsearch可视化工具es-head
链接:https://pan.baidu.com/s/1ZbG1sZ1halXinT491CsLOw
提取码:jdb8
将文件下载后解压,打开google浏览器,选择设置->扩展程序->打开开发者模式->左上角选择解压文件选择刚刚解压的文件夹位置->将扩展程序固定
在这里插入图片描述
打开可视化工具:
在这里插入图片描述
标记及链接成功。默认集群
在这里插入图片描述
至此本地安装已完成

三、在Java项目中添加elasticsearch

依赖添加

       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>
        <dependency>
            <groupId>org.elasticsearch</groupId>
            <artifactId>elasticsearch</artifactId>
        </dependency>
1.编写es配置类
@Configuration
public class EsConfig extends AbstractElasticsearchConfiguration {
    @Override
    public RestHighLevelClient elasticsearchClient() {
        final ClientConfiguration clientConfiguration = ClientConfiguration
                .builder()
                .connectedTo("localhost:9200")
                .build();
        return RestClients.create(clientConfiguration).rest();
    }
}

2.在实体类上添加es的相关注解
在这里插入图片描述
@Document 注解
@Documnet注解对索引的参数进行设置。
上面代码中,把 menu作为索引 初学者可以将索引当作数据库
@Id 注解
在 Elasticsearch 中创建文档时,使用 @Id 注解的字段作为文档的 _id 值
@Field 注解
通过 @Field 注解设置字段的数据类型和其他属性。

3.编写menuRepository,此接口相当于我们整合mybatis-plus的service层
在这里插入图片描述
string为id类型
4.接下来在业务层向elasticseach中添加数据
在这里插入图片描述
添加完成后添加数据
在这里插入图片描述
添加成功。
四、检验
调用之前定义好的findByName方法
在这里插入图片描述
在这里插入图片描述

成功
ps:只限于个人理解,后面关于分词器的正在研究


版权声明:本文为weixin_46550521原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。