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. 查询索引是否存在

相关推荐
杉之15 分钟前
常见前端GET请求以及对应的Spring后端接收接口写法
java·前端·后端·spring·vue
hycccccch43 分钟前
Canal+RabbitMQ实现MySQL数据增量同步
java·数据库·后端·rabbitmq
bobz9651 小时前
k8s 怎么提供虚拟机更好
后端
这个懒人1 小时前
深入解析Translog机制:Elasticsearch的数据守护者
数据库·elasticsearch·nosql·translog
bobz9652 小时前
nova compute 如何创建 ovs 端口
后端
用键盘当武器的秋刀鱼2 小时前
springBoot统一响应类型3.5.1版本
java·spring boot·后端
Asthenia04123 小时前
从迷宫到公式:为 NFA 构造正规式
后端
小李同学_LHY3 小时前
三.微服务架构中的精妙设计:服务注册/服务发现-Eureka
java·spring boot·spring·springcloud
Asthenia04123 小时前
像整理玩具一样:DFA 化简和状态等价性
后端
Asthenia04123 小时前
编译原理:打包思维-NFA 怎么变成 DFA
后端