Spring Boot 集成 Elasticsearch怎样在不启动es的情况下正常启动服务

解释

在spingboot 集成es客户端后,每当服务启动时,服务默认都会查看es中是否已经创建了对应的索引,如果没有索引则创建。基于上面的规则我们可以通过配置不自动创建索引来达到在没有es服务的情况下正常启动服务。

解决办法

  • 在entity类的@Document注解中添加属性createIndex=false
java 复制代码
@Data
@Document(indexName = "resource_index",createIndex=false)
public class ResourceEntity {
	XXXXXX
}

源码追踪

  • 有兴趣的同学可以参考一下:
  1. 如果需要创建mapping,且索引不存在,则执行创建操作

  2. 查询索引是否存在

相关推荐
十年Java程序媛8 小时前
Java枚举Enum完整教程|替代静态常量,开发与面试要点
java·开发语言·spring boot·后端·面试
我是人✓8 小时前
SpringBoot静态资源映射揭秘
java·spring boot·后端
全栈弄潮儿8 小时前
Python实战第7期:字典与集合
后端·python·编程语言
码事漫谈8 小时前
DeepSeek 又更新!但怎么有个分数往下掉?
后端
吃饱了得干活9 小时前
用 PageHelper 同步数据到 ES:能跑,但这几个坑得先知道
后端·elasticsearch
金銀銅鐵9 小时前
[Java] 借助GUI展示class文件的内容(v1.0版本)
jvm·后端·ai编程
皮皮林5519 小时前
Java 导出 Excel 利器:JXLS
后端
吃饱了得干活9 小时前
从 LIKE 查询到毫秒级搜索:Elasticsearch 核心原理与 Java 实战
后端·elasticsearch
Flynt10 小时前
我把真实的 ES 查询怼到 7059 星的 Rust 搜索引擎上:1366/1369 的兼容承诺,裂了 3 个缝
elasticsearch·搜索引擎·rust