learn and grow up

learn and grow up

学无止境

spring-data-es抽象service集成简单增删查改之四
写在前面本次主要是补充了上面两次的单元测试代码,以保障组件功能的正常运行 代码注释已经比较清楚了,不在此赘述 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611...
spring-data-es抽象service集成简单增删查改之三
写在前面接二 代码继续整理了后续的实现类,注释已经比较清楚了,不在此赘述 本次主要更新了基于ElasticsearchTemplate来进行操作,主要是实现了批量的操作 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610...
spring-data-es抽象service集成简单增删查改之二
写在前面接一 代码继续整理了后续的实现类,注释已经比较清楚了,不在此赘述 主要是基于ElasticsearchRepository来实现简单的增删改查的 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273import java.util.HashMap;import java.util.Map;import java.util.Optional;/** * 公共查询的...
spring-data-es抽象service集成简单增删查改之一
写在前面最近项目中用到了大量而是es进行数据的整合和查询,在项目完成后将自己花点时间整理了下组件,然后放上来,后面也可以继续用到~ 代码直接上代码,太忙了,先整理了base类,以下为代码,都有注释,就不在此赘述了 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991...
FeignRequestInterceptor示例
背景 项目中A服务需要频繁调用B服务,且参数内有许多共同属性,所以考虑利用feign的拦截器来进行统一参数的获取和封装,减少调用B服务前重复代码的编写 示例 直接上代码,后续遇到相同场景可以参考参考 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110...
es修改索引中mapping的类型
问题es不允许对索引的type进行字段的删除和修改,只允许新增。 新增字段12345678PUT my_index/_mapping/my_type{ "properties": { "new_column": { "type": "integer" } }} 删除和修改的步骤比较麻烦,具体步骤如下: 新增索引t2为想要的数据类型 将t1 reindex到t2 1234567891011121314POST _reindex{ "source": {...
idea之CommandLineIsTooLong问题解决
问题在某一次新增springboot项目部署启动时报了如下错误: 1Error running 'XXXApplication': Command line is too long. Shorten command line for XXXApplication or also for Spring Boot default configuration. 解决方法​ 经过排查发现是因为项目启动的命令行太长引起的。最终通过idea的配置来解决 shorten command line 选项提供三种选项缩短类路径,这里我们需要选JAR manifest。   non...
通过一次cannal监听问题浅读spring-data源码及其在es中的应用二
接上文​ 可以看到queries在new的时候初始化,将repository中需要代理的方法和具体实现类也就是RepositoryQuery实现类放入其中,然后再拦截器中判断并执行实现的方法即: 123456789101112131415161718192021222324252627282930313233343536//org.springframework.data.elasticsearch.repository.query.ElasticsearchPartQuery#executepublic Object execute(Object[] parameters) &...
通过一次cannal监听问题浅读spring-data源码及其在es中的应用一
写在前面​ 系统需要与其他系统对接,并用到其他系统数据,但是其他系统又很难改造,所以使用canal来对其他系统数据库进行监控,并将变更的信息写入es,项目中使用spring-data-es的组件与es进行交互 问题​ 在测试环境突然报了一个很奇怪的错误 ​ 解决​ 经过分析异常堆栈,发现是因为用了spring-data的ElasticsearchRepository查询组件引起的,我们一步步来看,先看调用的地方 ​ 神奇的地方就在这里,我们不需要写任何逻辑代码,spring就帮我们实现了es的查询,这就归功于spring-data组件的功能了,缺点就是排...
es的模糊搜索
写在前面最近新的项目中用到了大量的es,作为es方面的新手,逐渐熟悉es的DSL、analyzer、search等等,所以记录一下,加深自己的理解 理解es的模糊搜索首先理解搜索分词和存储分词 搜索分词指的是match类查询,比如match、match_phrase,同时我们可以指定分词器,term类查询是不分词查询,比如term、terms 存储分词es的text(2.x的string)类型字段存储,同搜索分词我们也可以利用不同的分词器来优化我们的搜索逻辑,比如默认的standard、ik等等 存储不分词,在es2.x和5.x有不同的做法 2.x 由于2.x中没有text和ke...
avatar
styytNOTstop
Knowledge has no limit.
FRIENDS
liwei