spring boot集成 elasticsearch 实例
时间: 2023-10-07 11:12:37 浏览: 135
好的,下面是一个简单的 Spring Boot 集成 Elasticsearch 的示例:
1. 添加 Elasticsearch 依赖
在 `pom.xml` 文件中添加 Elasticsearch 的 Maven 依赖:
```xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
</dependencies>
```
2. 配置 Elasticsearch
在 `application.properties` 中添加 Elasticsearch 的配置信息:
```properties
# Elasticsearch 配置
spring.data.elasticsearch.cluster-name=my-application
spring.data.elasticsearch.cluster-nodes=localhost:9300
```
3. 创建实体类
创建一个实体类,用于映射 Elasticsearch 中的一个文档:
```java
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
@Document(indexName = "books")
public class Book {
@Id
private String id;
private String title;
private String author;
// getter 和 setter 略
}
```
4. 创建 Elasticsearch Repository
创建一个 Elasticsearch Repository,用于操作 Elasticsearch 中的文档:
```java
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
public interface BookRepository extends ElasticsearchRepository<Book, String> {}
```
5. 使用 Elasticsearch Repository
在需要使用 Elasticsearch 的地方,注入 `BookRepository`,然后就可以对 Elasticsearch 中的文档进行操作了:
```java
@Autowired
private BookRepository bookRepository;
public void addBook(Book book) {
bookRepository.save(book);
}
public List<Book> searchBooks(String keyword) {
return bookRepository.findByTitleContainingOrAuthorContaining(keyword, keyword);
}
public void deleteBook(String id) {
bookRepository.deleteById(id);
}
```
以上就是一个简单的 Spring Boot 集成 Elasticsearch 的示例。当然,在实际使用中,还需要更多的配置和代码来支持更多的功能。
阅读全文