springboot整合elasticsearch代码详细教程步骤

图片[1]-springboot整合elasticsearch代码详细教程步骤-QQ沐编程

以下是在Spring Boot中整合Elasticsearch的案例代码:

1. 添加Elasticsearch依赖
在项目的pom.xml文件中添加以下依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>

2. 配置Elasticsearch连接
在application.properties或application.yml文件中添加以下配置:

spring.data.elasticsearch.cluster-name=your-cluster-name
spring.data.elasticsearch.cluster-nodes=localhost:9300

其中,your-cluster-name是Elasticsearch集群的名称,localhost:9300是Elasticsearch节点的地址。

3. 创建Elasticsearch实体类
创建一个Java类,表示要在Elasticsearch中索引的实体。例如,创建一个Book实体类:

import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;

@Document(indexName = "book", type = "book")
public class Book {

    @Id
    private String id;
    private String title;
    private String author;

    // 省略构造方法、getter和setter方法
}

4. 创建Elasticsearch仓库接口
创建一个继承自ElasticsearchRepository的接口,用于操作Elasticsearch中的数据。例如,创建一个BookRepository接口:

import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;

public interface BookRepository extends ElasticsearchRepository<Book, String> {

    List<Book> findByTitle(String title);

}

5. 使用Elasticsearch仓库接口
在需要使用Elasticsearch的地方,注入BookRepository接口,并调用其方法进行数据操作。例如,在一个Controller类中使用BookRepository进行数据查询:

@RestController
public class BookController {

    @Autowired
    private BookRepository bookRepository;

    @GetMapping("/books/{title}")
    public List<Book> getBooksByTitle(@PathVariable String title) {
        return bookRepository.findByTitle(title);
    }

}

以上就是在Spring Boot中整合Elasticsearch的基本代码示例。根据具体需求,可以进一步学习和使用Elasticsearch的高级功能,例如自定义查询方法、分页查询、聚合查询等。

© 版权声明
THE END
喜欢就支持一下吧
点赞8赞赏 分享