此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Data Elasticsearch 5.5.2! |
响应式 Elasticsearch Operations
ReactiveElasticsearchOperations
是使用ReactiveElasticsearchClient
.
这ReactiveElasticsearchTemplate
是ReactiveElasticsearchOperations
.
要开始使用ReactiveElasticsearchOperations
需要了解要合作的实际客户。
有关客户端以及如何配置它的详细信息,请参阅 Reactive Rest Client。
响应式作使用情况
ReactiveElasticsearchOperations
允许您保存、查找和删除域对象,并将这些对象映射到存储在 Elasticsearch 中的文档。
考虑以下事项:
示例 1.使用 ReactiveElasticsearchOperations
@Document(indexName = "marvel")
public class Person {
private @Id String id;
private String name;
private int age;
// Getter/Setter omitted...
}
ReactiveElasticsearchOperations operations;
// ...
operations.save(new Person("Bruce Banner", 42)) (1)
.doOnNext(System.out::println)
.flatMap(person -> operations.get(person.id, Person.class)) (2)
.doOnNext(System.out::println)
.flatMap(person -> operations.delete(person)) (3)
.doOnNext(System.out::println)
.flatMap(id -> operations.count(Person.class)) (4)
.doOnNext(System.out::println)
.subscribe(); (5)
以上在控制台上输出以下顺序。
> Person(id=QjWCWWcBXiLAnp77ksfR, name=Bruce Banner, age=42)
> Person(id=QjWCWWcBXiLAnp77ksfR, name=Bruce Banner, age=42)
> QjWCWWcBXiLAnp77ksfR
> 0
1 | 插入新的Person 文件进入漫威索引。这id 在服务器端生成并设置到返回的实例中。 |
2 | 查找Person 与匹配id 在漫威索引中。 |
3 | 删除Person 与匹配id ,从给定实例中提取,在漫威索引中。 |
4 | 统计漫威索引中的文档总数。 |
5 | 不要忘记订阅()。 |