Springboot3.1+Elasticsearch8.x匹配查询
springboot-starter3.1.0中spring-data-elasticsearch的版本为5.1.0,之前很多方法和类都找不到了。这里主要讲讲在5.1.0版本下如何使用spring data对elesticsearch8.x进行匹配查询。
一、配置依赖
第一步当然是配置依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
在这里面,spring-boot-starter-data-elasticsearch是3.1.0的,里面的spring-data-elasticsearch是5.1.0的,服务器上的Elasticsearch用的是8.7.0的。文章来源:https://www.toymoban.com/news/detail-608346.html
二、Elasticsearch配置
springboot对于elasticsearch活着的其它一些工具比如kafka,redis的配置都可以在resorces/application.properties中配置,新版的配置与旧版的不太一样,从ElasticsearchProperties.java中可以看到,前缀是spring.elasticsearch,主机配置项已经变成了uris的List,以前好像是spring.data.elasticsearch.cluster-nodes,因此我们在resorces/application.properties这样子配置
文章来源地址https://www.toymoban.com/news/detail-608346.html
spring.elasticsearch.uris=http://39.101.73.203:9200
三、配置实体类和Repository
- 在类前加上注解@Document(indexName = “discusspost”),indexName为索引名称,新版本好像移除了分片和副本的配置。
- 配置类的属性,和之前一样
@Document(indexName = "discusspost")
public class DiscussPost {
@Id
private int id;
@Field(type = FieldType.Integer)
private int userId;
@Field(type = FieldType.Text, analyzer = "ik_max_word", searchAnalyzer = "ik_smart")
private String title;
@Field(type = FieldType.Text, analyzer = "ik_max_word", searchAnalyzer = "ik_smart")
到了这里,关于Springboot3.1+Elasticsearch8.x匹配查询的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!