解释
在spingboot 集成es客户端后,每当服务启动时,服务默认都会查看es中是否已经创建了对应的索引,如果没有索引则创建。基于上面的规则我们可以通过配置不自动创建索引来达到在没有es服务的情况下正常启动服务。
解决办法
- 在entity类的@Document注解中添加属性createIndex=false
@Data
@Document(indexName = "resource_index",createIndex=false)
public class ResourceEntity {
XXXXX
}
源码追踪
- 有兴趣的同学可以参考一下:
-
如果需要创建mapping,且索引不存在,则执行创建操作

-
查询索引是否存在。


![Android AI ChatBot-v1.6.3-28-开心版[免登录使用GPT-4o和DeepSeek]](https://i-blog.csdnimg.cn/direct/0d3aa7044cff4ec79c9bb152bfca2124.png)




![信奥赛CSP-J复赛集训(模拟算法专题)(27):P5016 [NOIP 2018 普及组] 龙虎斗](https://i-blog.csdnimg.cn/img_convert/9b14611bdff06a0f3416ffc13e4252b6.png)












