spring-data-elasticsearch 最新版尝鲜

今天是2019年6月7日,操蛋的事情发生了
阿里云的es产品6.3.2,居然禁用了transportClient(默认9300端口),我在测试环境都开发好了.上预发懵逼了..卧槽?
怎么办...
找了各种资料


image.png

然并卵..
3.2.0.M4默认使用的elasticsearch版本是6.7.2
可恨的是啥,6.7版本开始新增了一个参数,include_type_name,因为8.0版本后要完全除去type.
增加这个字段,所以我调用elasticsearchTemplete创建索引的时候炸了..因为api自动带了我刚说的参数

    public static final String INCLUDE_TYPE_NAME_PARAMETER = "include_type_name";

然后我要开始搞事了
下载源码
1.把仓库的地址改成自己的私服地址


image.png

2.注释部分代码.因为打包的时候会报错


image.png

3.找到所有使用该代码的地方.默认都改为true


image.png

ps,jdk版本12,gradle版本5.4.1
4.改完后,打包,加上这个参数,就是编译正式包了


image.png

ps,如果私服已经有6.7.2版本的了.先去删掉.然后再去本地的仓库,删掉.jar-release版本是不允许覆盖的
至此,底层部分已经修改了

我们再来改第二个模块
下载spring data es 的源码,并修改自己的仓库


image.png

然后有啥需求自己往上面改
说下m4版本的用法
esconfig


image.png

repository的用法


image.png

官方打算支持alias的,但是m4版本下载下来.并没有看到支持代码,我就自己实现了

ElasticsearchPersistentEntity 这个接口新增 alias()方法


image.png

实现类增加如下代码


image.png

RestTemplete实现别名


image.png

上传,打包,完美

你可能感兴趣的:(spring-data-elasticsearch 最新版尝鲜)