由于spring和es的集成并不是特别友好,es的高低版本兼容问题、api更新频率高等问题,所以我选择是官网提供的原生Client(RestHighLevelClient),但又不想去关注es的配置类以及和spring的集成配置、jar包冲突等问题,所以使用spring-boot-starter-data-elasticsearch。
一、引入依赖jar 二、application.properties配置spring-boot-starter-data-elasticsearch中自动装配es的配置类:ElasticsearchRestClientAutoConfiguration、ElasticsearchRestClientProperties。
ElasticsearchRestClientAutoConfiguration:
ElasticsearchRestClientProperties:
三、使用ES基本操作持久层
ES查询持久层
其中,EsQueryReqPO、EsQueryRespPO、AggregationBucketPO等类如下:
ES多级(二级)聚合分桶查询
其中,EsMultiAggregationReqPO、AggregationBucketPO类如下:
二级聚合分桶测试代码
其它如果没有用spring-boot-starter-data-elasticsearch来自动注入es组件,那么需要自己做es client的注入,es配置类如下:
Snowflake是hutool包里的,导包:
聚合查询的测试用例:
到此这篇关于springboot2+es7使用RestHighLevelClient的示例代码的文章就介绍到这了,更多相关springboot2 es7使用RestHighLevelClient内容请搜索七叶笔记以前的文章或继续浏览下面的相关文章希望大家以后多多支持七叶笔记!