相关文章
ElasticSearch全文搜索引擎 -Spring Boot操作ES(SpringData概述、Spring Data Elasticsearch、基本操作、ElasticSearch操作文档)
2024-12-31 01:07

文章目录

Spring Data是spring提供的一套连接各种第三方数据源的框架集,它支持连接很多第三方数据源,例如:

包括数据库在内,很多第三方数据都可以使用SpringData操作,非常方便。

上面章节介绍了Spring Data可以连接很多第三方数据源,其中ES就是Spring Data可以连接的对象。原生情况下,我们需要使用socket来连接ES获得响应,再解析响应,代码量非常大,我们现在可以使用Spring Data提供的封装,连接ES,方便快捷。

转到knows-search模块:

  下面我们添加Spring Data ES的依赖:

application.properties:

SpringBoot启动类无需配置!

操作ES需要类:首先定义一个对应ES数据的类型,创建一个vo包,包中定义Item(商品)类代码如下:

这个类中所有属性均配置了对应ES的属性和类型,下面我们就可以使用这个类操作ES了。

创建一个包repository,创建一个接口ItemRepository:

这个接口和Mybatis Plus中Mapper接口继承的baseMapper类似,会自动提供基本的增删改查方法。下面进行测试,测试类代码如下:

上面进行了单增、单查、批量增和全查的操作,下面进行自定义的查询。

Spring Data支持编写方法名表达操作,会自动按方法名的表达生成实现代码,这是它的一大优势!

在ItemRepository接口编写方法:

测试代码

相当于运行了下面的指令

多属性条件查询:在ItemRepository接口编写方法:

测试类:

实际执行的请求:

排序查询:在ItemRepository接口编写方法:

测试代码:

实际运行的请求:

添加分页查询功能::在ItemRepository接口编写方法

测试:

根据条件分页查询

再来一种 根据条件分页查询

基于批量操作

最后附上自己写的一个请求工具类(使用这个不需要引入spring-data-es的jar包了,是依靠es自带的http请求操作)

需要注意的是批量操作时,换行符的使用(_bulk操作ES)

还有一点注意的是:当操作es索引时,索引不存在就会返回,不做配置的话会让程序直接抛出异常终止运行,我们希望状态码返回时,走创建索引的逻辑,这时候就需要把相关的状态码加入白名单

    以上就是本篇文章【ElasticSearch全文搜索引擎 -Spring Boot操作ES(SpringData概述、Spring Data Elasticsearch、基本操作、ElasticSearch操作文档)】的全部内容了,欢迎阅览 ! 文章地址:http://ww.kub2b.com/quote/11042.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站http://ww.kub2b.com/mobile/,查看更多   
发表评论
0评