ElasticSearch 安装与使用

ElasticSearch 安装与使用

一、ElasticSearch 安装

1、使用 docker search elasticsearch 搜索 ElashticSearch 镜像

2、docker pull imageName

3、运行镜像(需2G以上内存),docker run -d -p 9200:9200 -p 9300:9300 --name ES iamgeID

4、测试运行是否成功,docker ps -a 列出正在运行的镜像,在浏览器中输入 ip:9200 如果有响应,则安装成功

二、ElasticSearch 使用

1、添加 maven 依赖和基本配置

  • 在 pom.xml 文件的 dependencies 节点中加入
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency>

然后刷新 maven

  • 添加 yml 配置,在 spring.data 节点下配置 elasticsearch,添加配置如下

    rest: username: password: uris: ip:9200
  • 开启 elasticsearch 服务,在 SpringBootApplication 上方添加 @EnableElasticsearchRepositories 注解

    @EnableCaching @EnableRabbit @EnableElasticsearchRepositories @SpringBootApplication public class BmsApplication { public static void main (String[] args) { SpringApplication.run(BmsApplication.class, args); } }

2、简单介绍与实战

注意:在引用 Spring Data ElasticSearch 时,要注意版本问题,可以通过下面的网址查询

https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#preface.versions

下面是两个 Spring Data ElasticSearch 文档和实例网址

https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#preface

https://github.com/spring-projects/spring-data-elasticsearch

使用步骤

1、定义需要索引的实体类 Book,以图书为例

@Data @Document(indexName = "bms") public class Book { private @Id String id; private String name; }

2、定义操作接口 BookRepository

public interface BookRepository extends ElasticsearchRepository<Book,String> { public List<Book> findBooksByNameLike(String book); // 只需定义,无需实现 }

这里只需要继承 ElasticsearchRepository 这个类,就可以使用一些方法了,在这个接口中定义的方法不需要实现就可以使用,定义的方法名必须符合一定的规则,IDEA中会自动补全(灰常好用)

3、通过 @Autowired 注解自动注入,就可以使用 BookRepository 接口方法啦。


__EOF__

本文作者ZOLMK
本文链接https://www.cnblogs.com/zolmk/p/14073819.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   zolmk  阅读(190)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示