springboot + elasticsearch
tips: 上一篇文章我们整合了springboot 与kafka,细心的童鞋可能已经发现了我们使用的springboot版本为最新的2.0.0,同样spring-kafka也为最新的版本2.1.4,我们确实都已经成功的整合了,并没有遇到什么问题,但是今天我整合elasticsearch时却出现了问题,经过一段时间的排查,发现是依赖版本所致,我在引入elasticsearch依赖(spring-boot-starter-data-elasticsearch)时,默认会与springboot版本同步即2.0.0,然后启动的时候就会抛出异常:
Caused by: java.lang.ClassNotFoundException: org.springframework.data.mapping.context.AbstractMappingContext
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 41 common frames omitted
此时我把springboot版本降低为1.5.10,然后重新启动,以上异常不见了,但是抛出了另外一个异常:
java.lang.NoSuchMethodError: org.springframework.util.Assert.state(ZLjava/util/function/Supplier;)V
at org.springframework.kafka.listener.adapter.MessagingMessageListenerAdapter.determineInferredType(MessagingMessageListenerAdapter.java:463)
at org.springframework.kafka.listener.adapter.MessagingMessageListenerAdapter.<init>(MessagingMessageListenerAdapter.java:106)
at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.<init>(RecordMessagingMessageListenerAdapter.java:61)
at org.springframework.kafka.config.MethodKafkaListenerEndpoint.createMessageListenerInstance(MethodKafkaListenerEndpoint.java:172)
at org.springframework.kafka.config.MethodKafkaListenerEndpoint.createMessageListener(MethodKafkaListenerEndpoint.java:132)
at org.springframework.kafka.config.AbstractKafkaListenerEndpoint.setupMessageListener(AbstractKafkaListenerEndpoint.java:374)
at org.springframework.kafka.config.AbstractKafkaListenerEndpoint.setupListenerContainer(AbstractKafkaListenerEndpoint.java:359)
at org.springframework.kafka.config.AbstractKafkaListenerContainerFactory.createListenerContainer(AbstractKafkaListenerContainerFactory.java:246)
at org.springframework.kafka.config.AbstractKafkaListenerContainerFactory.createListenerContainer
仔细一看应该是和kafka相关的异常,于是我继续尝试着将kafka的版本降低至1.1.7(因为我之前用的就是这个版本),然后启动项目,果然顺利启动了(此时我的心情无以言表呀@_@);说了这么多就是记录一下可能产生问题的原因,希望能给其它童鞋一些警示,另外springboot版本更新速度之快堪称火箭啊,所以大家在引用的时候切忌追求最新,否则会遇到各种问题;
好吧,说了这么多,接下来进入正题了:
注:以下所有的springboot版本我都更改为1.5.10了。
1.打开pom.xml并加入以下内容:
<!--elasticsearch--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> <version>1.5.10.RELEASE</version> </dependency>
引入elasticsearch依赖
2.打开application-dev.properties加入以下内容(集群模式以“,”隔开):
##es spring.data.elasticsearch.cluster-name=elasticsearch spring.data.elasticsearch.cluster-nodes=10.0.2.23:9300
3.编写单元测试类:
如果查询到了数据说明你成功了哦!
注:
1.这里我并没有教大家建立索引和类型(orderinfo),大家可以自行查阅资料,挺简单的,搭建一个ES服务也挺简单的哦,ES集群是自动发现机制,只要在同一个网段,且集群名称相同多个ES服务会自动组建成一个集群(如果大家有啥不懂的可以私信哦,相互交流)
2.这里我并没有采用spring封装的elasticsearchTemplate查询,大家可以自行测试spring所封装的功能,因为我习惯了用原生api
转载于:https://www.cnblogs.com/babac/p/9028479.html
springboot + elasticsearch相关推荐
- 聊聊springboot elasticsearch healthIndicator
序 本文主要研究一下springboot elasticsearch healthIndicator ElasticsearchHealthIndicatorProperties spring-boo ...
- springboot+elasticsearch+bboss框架集成遇到的坑
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.为什么要用bboss? 二.遇到的坑 1.kibana.head页面查询结果不一致 2.head查询结果与bbos ...
- springboot+elasticsearch+neo4j+vue+activiti数字知识库管理系统
文章目录 前言 一.项目概要 二.相关技术点 1.富文本编辑器 2.全文检索 3.知识图谱 4.工作流 总结 前言 在数字化高度普及的时代,企事业机关单位在日常工作中会产生大量的文档,例如医院制度汇编 ...
- SpringBoot Elasticsearch
文章目录 Windwos Elasticsearch Elasticsearch 基本介绍 Elasticsearch 6.8.5 单机安装 kibana6.8.5 可视化工具 Springboot ...
- SpringBoot Elasticsearch组合查询封装
最近项目组需要用到Elasticsearch,封装了ESQueryBuilder方便条件组合,结合ES工具类使用效果更佳,下面是ES工具类传送门: SpringBoot Elasticsearch工具 ...
- springboot ElasticSearch配置自定义转换器ElasticsearchCustomConversions
springboot ElasticSearch配置自定义转换器ElasticsearchCustomConversions 问题场景 在将Timestamp类型存进Elasticsearc后,将其取 ...
- SpringBoot ElasticSearch 全文搜索
2019独角兽企业重金招聘Python工程师标准>>> 一.pom.xml配置 SpringBoot版本1.5.6https://blog.csdn.net/kingice1014/ ...
- springboot+Elasticsearch实现word,pdf,txt内容抽取并高亮分词全文检索
文章目录 需求 一.环境 二.功能实现 1.搭建环境 2.文件内容识别 三.代码 需求 产品希望我们这边能够实现用户上传PDF,WORD,TXT之内得文本内容,然后用户可以根据附件名称或文件内容模糊查 ...
- SpringBoot+Elasticsearch实现过程
前言: 最近因为工作中用到Elasticsearch,之前没接触过,所以学习了一下Elasticsearch搜索引擎,自己在本地搭建了一下过程,记录一下. 首先我查了一下springBoot版本和El ...
最新文章
- 日益谨慎的谷歌AI,会在自我限制中越走越慢吗?
- 电子计算机是一种精准的仪器,常见的八种无损检测仪器
- 用Pytorch实现三个优秀的自然图像分割框架!(包括FCN、U-Net和Deeplab,可直接训练预测)
- java final
- MyBatisPlus中使用 @TableField完成字段自动填充
- python静默打印pdf_前端静默打印实现 html pdf集合
- javascript图片库威力增强版
- “引才入湘”大行动正式启动,CSDN携手万兴科技助力长沙打造人才品牌
- mint 安装chrome_在Linux Mint上安装Chrome –简单的分步指南
- WinForm 窗体中实现单例模式
- 大工20秋C语言在线测试,大工20秋《计算机应用基础》在线测试
- ESC键居然有这样的妙用!!!你知道吗?
- 国外高手又一力作,CAML Builder
- 疯狂工作流讲义(第2版)基于Activiti6.x电子书
- Hololens工程发布前后覆盖的问题
- 《鸟哥的Linux私房菜》第四版导学
- BZOJ3533: [Sdoi2014]向量集
- 90%程序员是这样写注释的...网友:精辟
- unity开发_Unity开发人员在Ludum Dare 30上大放异彩
- ADO,ADO.NET
热门文章
- NLP数据科学家不会告诉你的残酷事实
- 显著提升图像识别网络效率,Facebook提出IdleBlock混合组成方法
- AI安防火热战况下 算法到场景还有多远?
- 深入剖析机器学习中的统计思想
- 人工智能:2018年发生了什么变化,2019年又将发生什么变化
- 30年后,请再来看霍金的“人工智能威胁论”
- 干货丨深度学习、图像分类入门,从VGG16卷积神经网络开始
- Python 之 Matplotlib (四)图例
- The following packages will be SUPERCEDED by a higher-priority channel
- 深度解析:国产化软硬件全景梳理