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

相关推荐
星辰离彬8 分钟前
Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解
java·spring boot·后端·sql·mysql·性能优化
q_191328469511 分钟前
基于Springboot+Vue的办公管理系统
java·vue.js·spring boot·后端·intellij idea
G皮T15 分钟前
【Elasticsearch】映射:fielddata 详解
大数据·elasticsearch·搜索引擎·映射·搜索·mappings·fielddata
ID_云泽20 分钟前
Elasticsearch中多索引数据合并与Nested嵌套类型操作全解析
elasticsearch·搜索引擎·全文检索
陪我一起学编程1 小时前
关于nvm与node.js
vue.js·后端·npm·node.js
舒一笑2 小时前
基于KubeSphere平台快速搭建单节点向量数据库Milvus
后端
JavaBuild2 小时前
时隔半年,拾笔分享:来自一个大龄程序员的迷茫自问
后端·程序员·创业
南朝雨2 小时前
linux下安装elasticsearch及ik分词器
linux·elasticsearch·全文检索
周全全2 小时前
基于 Vue 和 Spring Boot 实现滑块验证码的机器验证
前端·vue.js·spring boot