Spring Data Elasticsearch4.1.0使用教程
时间: 2024-05-05 15:22:07 浏览: 128
Spring Data Elasticsearch是Spring Data家族中的一个模块,提供了Elasticsearch的Spring集成支持。本教程将介绍如何使用Spring Data Elasticsearch4.1.0。
1. 添加依赖
在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-elasticsearch</artifactId>
<version>4.1.0</version>
</dependency>
```
2. 配置Elasticsearch连接信息
在application.properties或application.yml中添加以下配置:
```yaml
spring.data.elasticsearch.cluster-name=my-application
spring.data.elasticsearch.cluster-nodes=localhost:9300
```
其中,cluster-name为Elasticsearch集群的名称,cluster-nodes为Elasticsearch集群中连接节点的地址和端口号。
3. 定义实体类
定义一个实体类,并使用@Document注解标识为Elasticsearch文档对象。如:
```java
@Document(indexName = "book", createIndex = false)
public class Book {
@Id
private String id;
private String name;
private String author;
private String description;
// getter and setter
}
```
其中,@Id注解标识为Elasticsearch文档对象的唯一标识字段。
4. 定义Elasticsearch操作接口
定义一个接口,并继承ElasticsearchRepository接口。如:
```java
public interface BookRepository extends ElasticsearchRepository<Book, String> {
}
```
其中,Book为实体类,String为实体类的@Id注解标识的类型。
5. 使用Elasticsearch操作接口
在需要使用Elasticsearch的地方注入BookRepository,并使用其提供的方法进行操作。
```java
@Autowired
private BookRepository bookRepository;
@Test
public void testSave() {
Book book = new Book();
book.setId("1");
book.setName("Java编程思想");
book.setAuthor("Bruce Eckel");
book.setDescription("Java编程入门必读经典之作");
bookRepository.save(book);
}
@Test
public void testFindById() {
Optional<Book> optionalBook = bookRepository.findById("1");
assertNotNull(optionalBook);
assertTrue(optionalBook.isPresent());
Book book = optionalBook.get();
assertEquals("Java编程思想", book.getName());
}
@Test
public void testFindByAuthor() {
List<Book> bookList = bookRepository.findByAuthor("Bruce Eckel");
assertNotNull(bookList);
assertEquals(1, bookList.size());
Book book = bookList.get(0);
assertEquals("Java编程思想", book.getName());
}
```
以上代码演示了如何保存文档,根据文档的唯一标识查询文档,以及根据其他字段查询文档。
以上就是使用Spring Data Elasticsearch4.1.0的基本教程。
阅读全文